X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-psi;a=blobdiff_plain;f=src%2Fparser.re;h=831b218757c108e571c646ee05a17e4682b9514d;hp=1e106cd5528cc054edd5c81882cb4ae89fd3c065;hb=469fe3395cb9696e32bcd64639f22113d8fb2ec6;hpb=6af43d341ce260ffd7d5d443bc0b535692d5f67e diff --git a/src/parser.re b/src/parser.re index 1e106cd..831b218 100644 --- a/src/parser.re +++ b/src/parser.re @@ -177,47 +177,7 @@ token_t PSI_ParserScan(PSI_Parser *P) NAME = [a-zA-Z_]W*; NSNAME = (NAME)? ("\\" NAME)+; QUOTED_STRING = "\"" ([^\"])+ "\""; - TRUE = 'TRUE'; - FALSE = 'FALSE'; - NULL = 'NULL'; - MIXED = 'mixed'; - VOID = 'void'; - BOOL = 'bool'; - CHAR = 'char'; - SHORT = 'short'; - INT = 'int'; - LONG = 'long'; - FLOAT = 'float'; - DOUBLE = 'double'; - SINT8 = 'sint8'; - UINT8 = 'uint8'; - SINT16 = 'sint16'; - UINT16 = 'uint16'; - SINT32 = 'sint32'; - UINT32 = 'uint32'; - SINT64 = 'sint64'; - UINT64 = 'uint64'; - STRING = 'string'; - ARRAY = 'array'; - FUNCTION = 'function'; - TYPEDEF = 'typedef'; - CONST = 'const'; - LIB = 'lib'; - LET = 'let'; - SET = 'set'; - RETURN = 'return'; - FREE = 'free'; - STRLEN = 'strlen'; - STRVAL = 'strval'; - INTVAL = 'intval'; - FLOATVAL = 'floatval'; - BOOLVAL = 'boolval'; - TO_STRING = 'to_string'; - TO_INT = 'to_int'; - TO_FLOAT = 'to_float'; - TO_BOOL = 'to_bool'; NUMBER = [+-]? [0-9]* "."? [0-9]+ ([eE] [+-]? [0-9]+)?; - DIGITS = [0-9]+; "#" .* "\n" { ++P->line; RETURN(PSI_T_COMMENT);} "(" {RETURN(PSI_T_LPAREN);} @@ -235,47 +195,47 @@ token_t PSI_ParserScan(PSI_Parser *P) "&" {RETURN(PSI_T_REFERENCE);} [\r\n] { ++P->line; continue; } [\t ]+ { continue; } - TRUE {RETURN(PSI_T_TRUE);} - FALSE {RETURN(PSI_T_FALSE);} - NULL {RETURN(PSI_T_NULL);} - MIXED {RETURN(PSI_T_MIXED);} - VOID {RETURN(PSI_T_VOID);} - BOOL {RETURN(PSI_T_BOOL);} - CHAR {RETURN(PSI_T_CHAR);} - SHORT {RETURN(PSI_T_SHORT);} - INT {RETURN(PSI_T_INT);} - LONG {RETURN(PSI_T_LONG);} - FLOAT {RETURN(PSI_T_FLOAT);} - DOUBLE {RETURN(PSI_T_DOUBLE);} - SINT8 {RETURN(PSI_T_SINT8);} - UINT8 {RETURN(PSI_T_UINT8);} - SINT16 {RETURN(PSI_T_SINT16);} - UINT16 {RETURN(PSI_T_UINT16);} - SINT32 {RETURN(PSI_T_SINT32);} - UINT32 {RETURN(PSI_T_UINT32);} - SINT64 {RETURN(PSI_T_SINT64);} - UINT64 {RETURN(PSI_T_UINT64);} - STRING {RETURN(PSI_T_STRING);} - ARRAY {RETURN(PSI_T_ARRAY);} - FUNCTION {RETURN(PSI_T_FUNCTION);} - TYPEDEF {RETURN(PSI_T_TYPEDEF);} - CONST {RETURN(PSI_T_CONST);} - LIB {RETURN(PSI_T_LIB);} - LET {RETURN(PSI_T_LET);} - SET {RETURN(PSI_T_SET);} - RETURN {RETURN(PSI_T_RETURN);} - FREE {RETURN(PSI_T_FREE);} - STRLEN {RETURN(PSI_T_STRLEN);} - STRVAL {RETURN(PSI_T_STRVAL);} - INTVAL {RETURN(PSI_T_INTVAL);} - FLOATVAL {RETURN(PSI_T_FLOATVAL);} - BOOLVAL {RETURN(PSI_T_BOOLVAL);} - TO_STRING {RETURN(PSI_T_TO_STRING);} - TO_INT {RETURN(PSI_T_TO_INT);} - TO_FLOAT {RETURN(PSI_T_TO_FLOAT);} - TO_BOOL {RETURN(PSI_T_TO_BOOL);} + 'TRUE' {RETURN(PSI_T_TRUE);} + 'FALSE' {RETURN(PSI_T_FALSE);} + 'NULL' {RETURN(PSI_T_NULL);} + 'MIXED' {RETURN(PSI_T_MIXED);} + 'VOID' {RETURN(PSI_T_VOID);} + 'BOOL' {RETURN(PSI_T_BOOL);} + 'INT' {RETURN(PSI_T_INT);} + 'FLOAT' {RETURN(PSI_T_FLOAT);} + 'DOUBLE' {RETURN(PSI_T_DOUBLE);} + 'INT8_T' {RETURN(PSI_T_INT8);} + 'UINT8_T' {RETURN(PSI_T_UINT8);} + 'INT16_T' {RETURN(PSI_T_INT16);} + 'UINT16_T' {RETURN(PSI_T_UINT16);} + 'INT32_T' {RETURN(PSI_T_INT32);} + 'UINT32_T' {RETURN(PSI_T_UINT32);} + 'INT64_T' {RETURN(PSI_T_INT64);} + 'UINT64_T' {RETURN(PSI_T_UINT64);} + 'STRING' {RETURN(PSI_T_STRING);} + 'ARRAY' {RETURN(PSI_T_ARRAY);} + 'FUNCTION' {RETURN(PSI_T_FUNCTION);} + 'TYPEDEF' {RETURN(PSI_T_TYPEDEF);} + 'STRUCT' {RETURN(PSI_T_STRUCT);} + 'CONST' {RETURN(PSI_T_CONST);} + 'LIB' {RETURN(PSI_T_LIB);} + 'LET' {RETURN(PSI_T_LET);} + 'SET' {RETURN(PSI_T_SET);} + 'RETURN' {RETURN(PSI_T_RETURN);} + 'FREE' {RETURN(PSI_T_FREE);} + 'STRLEN' {RETURN(PSI_T_STRLEN);} + 'STRVAL' {RETURN(PSI_T_STRVAL);} + 'INTVAL' {RETURN(PSI_T_INTVAL);} + 'FLOATVAL' {RETURN(PSI_T_FLOATVAL);} + 'BOOLVAL' {RETURN(PSI_T_BOOLVAL);} + 'ARRVAL' {RETURN(PSI_T_ARRVAL);} + 'CALLOC' {RETURN(PSI_T_CALLOC);} + 'TO_ARRAY' {RETURN(PSI_T_TO_ARRAY);} + 'TO_STRING' {RETURN(PSI_T_TO_STRING);} + 'TO_INT' {RETURN(PSI_T_TO_INT);} + 'TO_FLOAT' {RETURN(PSI_T_TO_FLOAT);} + 'TO_BOOL' {RETURN(PSI_T_TO_BOOL);} NUMBER {RETURN(PSI_T_NUMBER);} - DIGITS {RETURN(PSI_T_DIGITS);} NAME {RETURN(PSI_T_NAME);} NSNAME {RETURN(PSI_T_NSNAME);} QUOTED_STRING {RETURN(PSI_T_QUOTED_STRING);}