FreeBASIC
0.91.0
|
#include "dstr.bi"
Go to the source code of this file.
Data Structures | |
class | FBTOKEN |
class | LEX_TKCTX |
class | LEX_CTX |
Macros | |
#define | lexLineNum() /* lex.ctx->linenum */ |
#define | lexGetLastToken() /* lex.ctx->lasttk_id */ |
#define | lexGetTextW() /* @lex.ctx->head->textw */ |
#define | lexGetTextLen() /* lex.ctx->head->len */ |
#define | lexGetType() /* lex.ctx->head->dtype */ |
#define | lexGetSymChain() /* lex.ctx->head->sym_chain */ |
#define | lexGetPeriodPos() /* lex.ctx->head->prdpos */ |
#define | lexGetHasSlash() /* lex.ctx->head->hasesc */ |
#define | lexGetHead() /* lex.ctx->head */ |
#define | lexCurrLineGet() /* lex.ctx->currline.data */ |
#define | lexCurrLineReset() /* DZstrReset( lex.ctx->currline ) */ |
Enumerations | |
enum | LEXCHECK { LEXCHECK_EVERYTHING = &h0000, LEXCHECK_NOLINECONT = &h0001, LEXCHECK_NODEFINE = &h0002, LEXCHECK_NOWHITESPC = &h0004, LEXCHECK_NOSUFFIX = &h0008, LEXCHECK_NOQUOTES = &h0010, LEXCHECK_NOSYMBOL = &h0020, LEXCHECK_NOPERIOD = &h0040, LEXCHECK_EATPERIOD = &h0080, LEXCHECK_KWDNAMESPC = &h0100, LEXCHECK_NOMULTILINECOMMENT = &h0200, LEXCHECK_NOLETTERSUFFIX = &h0400 } |
Functions | |
sub | lexInit (byval_as_integer isinclude) |
sub | lexEnd () |
sub | lexPushCtx () |
sub | lexPopCtx () |
function_as_integer | lexGetToken (byval_as_LEXCHECK flags=LEXCHECK_EVERYTHING) |
function_as_integer | lexGetClass (byval_as_LEXCHECK flags=LEXCHECK_EVERYTHING) |
function_as_zstring_ptr | lexGetText () |
sub | lexEatToken (byval_as_zstring_ptr token, byval_as_LEXCHECK flags=LEXCHECK_EVERYTHING) |
sub | lexPPOnlyEmitToken () |
sub | lexPPOnlyEmitText (byref_as_string s) |
sub | lexSkipToken (byval_as_LEXCHECK flags=LEXCHECK_EVERYTHING) |
function_as_integer | lexGetLookAheadClass (byval_as_integer k, byval_as_LEXCHECK flags=LEXCHECK_EVERYTHING) |
function_as_integer | lexGetLookAhead (byval_as_integer k, byval_as_LEXCHECK flags=LEXCHECK_EVERYTHING) |
sub | lexReadLine (byval_as_uinteger endchar=INVALID, byval_as_zstring_ptr dst=INVALID, byval_as_integer skipline=FALSE) |
sub | lexSkipLine () |
sub | lexNextToken (byval_as_FBTOKEN_ptr t, byval_as_LEXCHECK flags=LEXCHECK_EVERYTHING) |
function_as_uinteger | lexCurrentChar (byval_as_integer skipwhitespc=FALSE) |
function_as_uinteger | lexGetLookAheadChar (byval_as_integer skipwhitespc=FALSE) |
function_as_uinteger | lexEatChar () |
function_as_string | lexPeekCurrentLine (byref_as_string token_pos, byval_as_integer do_trim) |
Variables | |
const VAR | FB_LEX_MAXK = 3 |
const VAR | LEX_MAXBUFFCHARS = 8192 |
LEX_CTX | lex |
#define lexCurrLineReset | ( | ) | /* DZstrReset( lex.ctx->currline ) */ |
enum LEXCHECK |
function_as_uinteger lexCurrentChar | ( | byval_as_integer | skipwhitespc = FALSE ) |
function_as_uinteger lexEatChar | ( | ) |
sub lexEatToken | ( | byval_as_zstring_ptr | token, |
byval_as_LEXCHECK | flags = LEXCHECK_EVERYTHING |
||
) |
sub lexEnd | ( | ) |
function_as_integer lexGetClass | ( | byval_as_LEXCHECK | flags = LEXCHECK_EVERYTHING ) |
function_as_integer lexGetLookAhead | ( | byval_as_integer | k, |
byval_as_LEXCHECK | flags = LEXCHECK_EVERYTHING |
||
) |
function_as_uinteger lexGetLookAheadChar | ( | byval_as_integer | skipwhitespc = FALSE ) |
function_as_integer lexGetLookAheadClass | ( | byval_as_integer | k, |
byval_as_LEXCHECK | flags = LEXCHECK_EVERYTHING |
||
) |
function_as_integer lexGetToken | ( | byval_as_LEXCHECK | flags = LEXCHECK_EVERYTHING ) |
sub lexInit | ( | byval_as_integer | isinclude) |
sub lexNextToken | ( | byval_as_FBTOKEN_ptr | t, |
byval_as_LEXCHECK | flags = LEXCHECK_EVERYTHING |
||
) |
function_as_string lexPeekCurrentLine | ( | byref_as_string | token_pos, |
byval_as_integer | do_trim | ||
) |
sub lexPopCtx | ( | ) |
sub lexPPOnlyEmitText | ( | byref_as_string | s) |
sub lexPPOnlyEmitToken | ( | ) |
sub lexPushCtx | ( | ) |
sub lexReadLine | ( | byval_as_uinteger | endchar = INVALID , |
byval_as_zstring_ptr | dst = INVALID , |
||
byval_as_integer | skipline = FALSE |
||
) |
sub lexSkipLine | ( | ) |
sub lexSkipToken | ( | byval_as_LEXCHECK | flags = LEXCHECK_EVERYTHING ) |