s4g  0.9.2
высокоуровневый, императивный, процедурный, встраиваемый, скриптовый язык программирования общего назначения, написанный на C++.
Файл s4g_parse.h

Заголовочный файл с основными типами и данными для парсинга кода Подробнее...

#include "s4g_types.h"

См. исходные тексты.

Классы

struct  s4g_Lexeme
 лексема Подробнее...
 
struct  s4g_BaseNode
 базовый класс нода АСТ Подробнее...
 
struct  s4g_Node
 нод, ключевой объект в абстрактном синтаксическом дереве Подробнее...
 

Перечисления

enum  S4G_KW_LANG
 идентификаторы ключевых слов языка
 
enum  S4G_KW_PP
 идентификаторы ключевых слов препроцессора
 
enum  S4G_KC_DELIMITER
 идентификаторы символов разделителей
 
enum  S4G_KC_GROUPEXPR
 идентификаторы символов группировки выражений
 
enum  S4G_KC_GROUPDATA
 идентификаторы символов группировки данных
 
enum  S4G_KC_A2O
 идентификаторы символов обращения к данным
 
enum  S4G_KC_AASSIGN
 идентификаторы символов присваивания
 
enum  S4G_KC_ARITHMETIC
 идентификаторы символов арифметических операций
 
enum  S4G_KC_LOGIC
 идентификаторы символов логических операций
 
enum  S4G_KC_BIT
 идентификаторы символов битовых операций
 
enum  S4G_KC_ASSIGN_ARITHMETIC
 идентификаторы символов арифметических операций с присваиванием
 
enum  S4G_KC_ASSIGN_BIT
 идентификаторы символов битовых операций с присваиванием
 
enum  S4G_LEXEME_TYPE {
  S4G_LEXEME_TYPE_WORD_USER, S4G_LEXEME_TYPE_WORD_STRING, S4G_LEXEME_TYPE_WORD_FLOAT, S4G_LEXEME_TYPE_WORD_INT,
  S4G_LEXEME_TYPE_WORD_UINT, S4G_LEXEME_TYPE_WORD_KEY, S4G_LEXEME_TYPE_WORD_PREP, S4G_LEXEME_TYPE_MARG,
  S4G_LEXEME_TYPE_SYM_DELIMITER, S4G_LEXEME_TYPE_SYM_ARITHMETIC, S4G_LEXEME_TYPE_SYM_LOGIC, S4G_LEXEME_TYPE_SYM_BIT,
  S4G_LEXEME_TYPE_SYM_ASSIGN, S4G_LEXEME_TYPE_SYM_ARITHMETIC_ASSIGN, S4G_LEXEME_TYPE_SYM_BIT_ASSIGN, S4G_LEXEME_TYPE_SYM_GROUP_EXPR,
  S4G_LEXEME_TYPE_SYM_GROUP_DATA, S4G_LEXEME_TYPE_SYM_A2O
}
 типы лексем Подробнее...
 
enum  S4G_NODE_TYPE
 типы нодов
 

Функции

int s4g_get_priority (S4G_NODE_TYPE op)
 вычисление приоритетов операции
 

Переменные

const char g_aKeywordsLang [][S4G_MAX_LEN_KEY_WORD_DEF]
 ключевые слова языка
 
const char g_aKeywordsPreproc [][S4G_MAX_LEN_KEY_WORD_DEF]
 ключевые слова препроцессора
 
const char g_aKeycharsDelimiter [][S4G_MAX_LEN_KEY_WORD_DEF]
 символы разделители
 
const char g_aKeycharsGroupExpr [][S4G_MAX_LEN_KEY_WORD_DEF]
 символы группировки выражений
 
const char g_aKeycharsGroupData [][S4G_MAX_LEN_KEY_WORD_DEF]
 символы группировки данных
 
const char g_aKeycharsAccess2Object [][S4G_MAX_LEN_KEY_WORD_DEF]
 символы обращения к данным
 
const char g_aKeycharsAssign [][S4G_MAX_LEN_KEY_WORD_DEF]
 символы присваивания
 
const char g_aKeycharsArithmetic [][S4G_MAX_LEN_KEY_WORD_DEF]
 символы арифметических операций
 
const char g_aKeycharsLogic [][S4G_MAX_LEN_KEY_WORD_DEF]
 символы логических операций
 
const char g_aKeycharsBit [][S4G_MAX_LEN_KEY_WORD_DEF]
 символы битовых операций
 
const char g_aKeycharsAssignArithmetic [][S4G_MAX_LEN_KEY_WORD_DEF]
 символы арифметических операций с присваиванием
 
const char g_aKeycharsAssignBit [][S4G_MAX_LEN_KEY_WORD_DEF]
 символы битовых операций с присваиванием
 
const char s4g_key_syms_comment_os [][S4G_MAX_LEN_KEY_WORD_DEF]
 !! снести после проверки препроцессора
 
const char s4g_key_syms_comment_ms [][S4G_MAX_LEN_KEY_WORD_DEF]
 !! снести после проверки препроцессора
 

Подробное описание

Заголовочный файл с основными типами и данными для парсинга кода

Перечисления

◆ S4G_LEXEME_TYPE

типы лексем

Элементы перечислений
S4G_LEXEME_TYPE_WORD_USER 

пользовательское слово

S4G_LEXEME_TYPE_WORD_STRING 

строка

S4G_LEXEME_TYPE_WORD_FLOAT 

число с плавающей запятой

S4G_LEXEME_TYPE_WORD_INT 

целое знаковое число

S4G_LEXEME_TYPE_WORD_UINT 

целое беззнаковое число

S4G_LEXEME_TYPE_WORD_KEY 

ключевое слово языка

S4G_LEXEME_TYPE_WORD_PREP 

слово препроцессора

S4G_LEXEME_TYPE_MARG 

переменное количество аргументов

S4G_LEXEME_TYPE_SYM_DELIMITER 

символ разделителя

S4G_LEXEME_TYPE_SYM_ARITHMETIC 

арифметический символ

S4G_LEXEME_TYPE_SYM_LOGIC 

символ логических операций

S4G_LEXEME_TYPE_SYM_BIT 

символ битовых операций

S4G_LEXEME_TYPE_SYM_ASSIGN 

символ присвоения

S4G_LEXEME_TYPE_SYM_ARITHMETIC_ASSIGN 

арифметический символ и присвоение

S4G_LEXEME_TYPE_SYM_BIT_ASSIGN 

символ битовой операции и присвоение

S4G_LEXEME_TYPE_SYM_GROUP_EXPR 

символ группировки выражений

S4G_LEXEME_TYPE_SYM_GROUP_DATA 

символ группировки данных

S4G_LEXEME_TYPE_SYM_A2O 

символ обращения к объекту