diff options
author | thegeorg <thegeorg@yandex-team.com> | 2023-10-03 11:19:48 +0300 |
---|---|---|
committer | thegeorg <thegeorg@yandex-team.com> | 2023-10-03 11:43:28 +0300 |
commit | cda0c13f23f6b169fb0a49dc504b40a0aaecea09 (patch) | |
tree | 26476e92e5af2c856e017afb1df8f8dff42495bf /contrib/tools/swig/Source/Swig/swigscan.h | |
parent | 4854116da9c5e3c95bb8440f2ea997c54b6e1a61 (diff) | |
download | ydb-cda0c13f23f6b169fb0a49dc504b40a0aaecea09.tar.gz |
Move contrib/tools/jdk to build/platform/java/jdk/testing
Diffstat (limited to 'contrib/tools/swig/Source/Swig/swigscan.h')
-rw-r--r-- | contrib/tools/swig/Source/Swig/swigscan.h | 119 |
1 files changed, 119 insertions, 0 deletions
diff --git a/contrib/tools/swig/Source/Swig/swigscan.h b/contrib/tools/swig/Source/Swig/swigscan.h new file mode 100644 index 0000000000..6c9d1ff7fc --- /dev/null +++ b/contrib/tools/swig/Source/Swig/swigscan.h @@ -0,0 +1,119 @@ +/* ----------------------------------------------------------------------------- + * This file is part of SWIG, which is licensed as a whole under version 3 + * (or any later version) of the GNU General Public License. Some additional + * terms also apply to certain portions of SWIG. The full details of the SWIG + * license and copyrights can be found in the LICENSE and COPYRIGHT files + * included with the SWIG source code as distributed by the SWIG developers + * and at https://www.swig.org/legal.html. + * + * swigscan.h + * + * C/C++ scanner. + * ----------------------------------------------------------------------------- */ + +typedef struct Scanner Scanner; + +extern Scanner *NewScanner(void); +extern void DelScanner(Scanner *); +extern void Scanner_clear(Scanner *); +extern void Scanner_push(Scanner *, String *); +extern void Scanner_pushtoken(Scanner *, int, const_String_or_char_ptr value); +extern int Scanner_token(Scanner *); +extern String *Scanner_text(Scanner *); +extern void Scanner_skip_line(Scanner *); +extern int Scanner_skip_balanced(Scanner *, int startchar, int endchar); +extern String *Scanner_get_raw_text_balanced(Scanner *, int startchar, int endchar); +extern void Scanner_set_location(Scanner *, String *file, int line); +extern String *Scanner_file(Scanner *); +extern int Scanner_line(Scanner *); +extern int Scanner_start_line(Scanner *); +extern void Scanner_idstart(Scanner *, const char *idchar); +extern String *Scanner_errmsg(Scanner *); +extern int Scanner_errline(Scanner *); +extern int Scanner_isoperator(int tokval); +extern void Scanner_locator(Scanner *, String *loc); + +/* Note: Tokens in range 100+ are for C/C++ operators */ + +#define SWIG_MAXTOKENS 200 +#define SWIG_TOKEN_LPAREN 1 /* ( */ +#define SWIG_TOKEN_RPAREN 2 /* ) */ +#define SWIG_TOKEN_SEMI 3 /* ; */ +#define SWIG_TOKEN_LBRACE 4 /* { */ +#define SWIG_TOKEN_RBRACE 5 /* } */ +#define SWIG_TOKEN_LBRACKET 6 /* [ */ +#define SWIG_TOKEN_RBRACKET 7 /* ] */ +#define SWIG_TOKEN_BACKSLASH 8 /* \ */ +#define SWIG_TOKEN_ENDLINE 9 /* \n */ +#define SWIG_TOKEN_STRING 10 /* "str" */ +#define SWIG_TOKEN_POUND 11 /* # */ +#define SWIG_TOKEN_COLON 12 /* : */ +#define SWIG_TOKEN_DCOLON 13 /* :: */ +#define SWIG_TOKEN_DCOLONSTAR 14 /* ::* */ +#define SWIG_TOKEN_ID 15 /* identifier */ +#define SWIG_TOKEN_FLOAT 16 /* 3.1415F */ +#define SWIG_TOKEN_DOUBLE 17 /* 3.1415 */ +#define SWIG_TOKEN_INT 18 /* 314 */ +#define SWIG_TOKEN_UINT 19 /* 314U */ +#define SWIG_TOKEN_LONG 20 /* 314L */ +#define SWIG_TOKEN_ULONG 21 /* 314UL */ +#define SWIG_TOKEN_CHAR 22 /* 'charconst' */ +#define SWIG_TOKEN_PERIOD 23 /* . */ +#define SWIG_TOKEN_AT 24 /* @ */ +#define SWIG_TOKEN_DOLLAR 25 /* $ */ +#define SWIG_TOKEN_CODEBLOCK 26 /* %{ ... %} ... */ +#define SWIG_TOKEN_RSTRING 27 /* `charconst` */ +#define SWIG_TOKEN_LONGLONG 28 /* 314LL */ +#define SWIG_TOKEN_ULONGLONG 29 /* 314ULL */ +#define SWIG_TOKEN_QUESTION 30 /* ? */ +#define SWIG_TOKEN_COMMENT 31 /* C or C++ comment */ +#define SWIG_TOKEN_BOOL 32 /* true or false */ +#define SWIG_TOKEN_WSTRING 33 /* L"str" */ +#define SWIG_TOKEN_WCHAR 34 /* L'c' */ +#define SWIG_TOKEN_ELLIPSIS 35 /* ... */ +#define SWIG_TOKEN_LLBRACKET 36 /* [[ */ +#define SWIG_TOKEN_RRBRACKET 37 /* ]] */ + +#define SWIG_TOKEN_ILLEGAL 99 +#define SWIG_TOKEN_ERROR -1 + +#define SWIG_TOKEN_COMMA 101 /* , */ +#define SWIG_TOKEN_STAR 102 /* * */ +#define SWIG_TOKEN_TIMES 102 /* * */ +#define SWIG_TOKEN_EQUAL 103 /* = */ +#define SWIG_TOKEN_EQUALTO 104 /* == */ +#define SWIG_TOKEN_NOTEQUAL 105 /* != */ +#define SWIG_TOKEN_PLUS 106 /* + */ +#define SWIG_TOKEN_MINUS 107 /* - */ +#define SWIG_TOKEN_AND 108 /* & */ +#define SWIG_TOKEN_LAND 109 /* && */ +#define SWIG_TOKEN_OR 110 /* | */ +#define SWIG_TOKEN_LOR 111 /* || */ +#define SWIG_TOKEN_XOR 112 /* ^ */ +#define SWIG_TOKEN_LESSTHAN 113 /* < */ +#define SWIG_TOKEN_GREATERTHAN 114 /* > */ +#define SWIG_TOKEN_LTEQUAL 115 /* <= */ +#define SWIG_TOKEN_GTEQUAL 116 /* >= */ +#define SWIG_TOKEN_NOT 117 /* ~ */ +#define SWIG_TOKEN_LNOT 118 /* ! */ +#define SWIG_TOKEN_SLASH 119 /* / */ +#define SWIG_TOKEN_DIVIDE 119 /* / */ +#define SWIG_TOKEN_PERCENT 120 /* % */ +#define SWIG_TOKEN_MODULO 120 /* % */ +#define SWIG_TOKEN_LSHIFT 121 /* << */ +#define SWIG_TOKEN_RSHIFT 122 /* >> */ +#define SWIG_TOKEN_PLUSPLUS 123 /* ++ */ +#define SWIG_TOKEN_MINUSMINUS 124 /* -- */ +#define SWIG_TOKEN_PLUSEQUAL 125 /* += */ +#define SWIG_TOKEN_MINUSEQUAL 126 /* -= */ +#define SWIG_TOKEN_TIMESEQUAL 127 /* *= */ +#define SWIG_TOKEN_DIVEQUAL 128 /* /= */ +#define SWIG_TOKEN_ANDEQUAL 129 /* &= */ +#define SWIG_TOKEN_OREQUAL 130 /* |= */ +#define SWIG_TOKEN_XOREQUAL 131 /* ^= */ +#define SWIG_TOKEN_LSEQUAL 132 /* <<= */ +#define SWIG_TOKEN_RSEQUAL 133 /* >>= */ +#define SWIG_TOKEN_MODEQUAL 134 /* %= */ +#define SWIG_TOKEN_ARROW 135 /* -> */ +#define SWIG_TOKEN_ARROWSTAR 136 /* ->* */ +#define SWIG_TOKEN_LTEQUALGT 137 /* <=> */ |