ReactOS 0.4.16-dev-38-g96c65e9
|
#include <assert.h>
#include <limits.h>
#include <math.h>
#include "vbscript.h"
#include "parse.h"
#include "parser.tab.h"
#include "wine/debug.h"
Go to the source code of this file.
Functions | |
WINE_DEFAULT_DEBUG_CHANNEL (vbscript) | |
static BOOL | is_identifier_char (WCHAR c) |
static int | check_keyword (parser_ctx_t *ctx, const WCHAR *word, const WCHAR **lval) |
static int | check_keywords (parser_ctx_t *ctx, const WCHAR **lval) |
static int | parse_identifier (parser_ctx_t *ctx, const WCHAR **ret) |
static int | parse_string_literal (parser_ctx_t *ctx, const WCHAR **ret) |
static int | parse_numeric_literal (parser_ctx_t *ctx, void **ret) |
static int | hex_to_int (WCHAR c) |
static int | parse_hex_literal (parser_ctx_t *ctx, LONG *ret) |
static void | skip_spaces (parser_ctx_t *ctx) |
static int | comment_line (parser_ctx_t *ctx) |
static int | parse_next_token (void *lval, parser_ctx_t *ctx) |
int | parser_lex (void *lval, parser_ctx_t *ctx) |
Variables | |
static const WCHAR | andW [] = {'a','n','d',0} |
static const WCHAR | byrefW [] = {'b','y','r','e','f',0} |
static const WCHAR | byvalW [] = {'b','y','v','a','l',0} |
static const WCHAR | callW [] = {'c','a','l','l',0} |
static const WCHAR | caseW [] = {'c','a','s','e',0} |
static const WCHAR | classW [] = {'c','l','a','s','s',0} |
static const WCHAR | constW [] = {'c','o','n','s','t',0} |
static const WCHAR | defaultW [] = {'d','e','f','a','u','l','t',0} |
static const WCHAR | dimW [] = {'d','i','m',0} |
static const WCHAR | doW [] = {'d','o',0} |
static const WCHAR | eachW [] = {'e','a','c','h',0} |
static const WCHAR | elseW [] = {'e','l','s','e',0} |
static const WCHAR | elseifW [] = {'e','l','s','e','i','f',0} |
static const WCHAR | emptyW [] = {'e','m','p','t','y',0} |
static const WCHAR | endW [] = {'e','n','d',0} |
static const WCHAR | eqvW [] = {'e','q','v',0} |
static const WCHAR | errorW [] = {'e','r','r','o','r',0} |
static const WCHAR | exitW [] = {'e','x','i','t',0} |
static const WCHAR | explicitW [] = {'e','x','p','l','i','c','i','t',0} |
static const WCHAR | falseW [] = {'f','a','l','s','e',0} |
static const WCHAR | forW [] = {'f','o','r',0} |
static const WCHAR | functionW [] = {'f','u','n','c','t','i','o','n',0} |
static const WCHAR | getW [] = {'g','e','t',0} |
static const WCHAR | gotoW [] = {'g','o','t','o',0} |
static const WCHAR | ifW [] = {'i','f',0} |
static const WCHAR | impW [] = {'i','m','p',0} |
static const WCHAR | inW [] = {'i','n',0} |
static const WCHAR | isW [] = {'i','s',0} |
static const WCHAR | letW [] = {'l','e','t',0} |
static const WCHAR | loopW [] = {'l','o','o','p',0} |
static const WCHAR | meW [] = {'m','e',0} |
static const WCHAR | modW [] = {'m','o','d',0} |
static const WCHAR | newW [] = {'n','e','w',0} |
static const WCHAR | nextW [] = {'n','e','x','t',0} |
static const WCHAR | notW [] = {'n','o','t',0} |
static const WCHAR | nothingW [] = {'n','o','t','h','i','n','g',0} |
static const WCHAR | nullW [] = {'n','u','l','l',0} |
static const WCHAR | onW [] = {'o','n',0} |
static const WCHAR | optionW [] = {'o','p','t','i','o','n',0} |
static const WCHAR | orW [] = {'o','r',0} |
static const WCHAR | privateW [] = {'p','r','i','v','a','t','e',0} |
static const WCHAR | propertyW [] = {'p','r','o','p','e','r','t','y',0} |
static const WCHAR | publicW [] = {'p','u','b','l','i','c',0} |
static const WCHAR | remW [] = {'r','e','m',0} |
static const WCHAR | resumeW [] = {'r','e','s','u','m','e',0} |
static const WCHAR | selectW [] = {'s','e','l','e','c','t',0} |
static const WCHAR | setW [] = {'s','e','t',0} |
static const WCHAR | stepW [] = {'s','t','e','p',0} |
static const WCHAR | stopW [] = {'s','t','o','p',0} |
static const WCHAR | subW [] = {'s','u','b',0} |
static const WCHAR | thenW [] = {'t','h','e','n',0} |
static const WCHAR | toW [] = {'t','o',0} |
static const WCHAR | trueW [] = {'t','r','u','e',0} |
static const WCHAR | untilW [] = {'u','n','t','i','l',0} |
static const WCHAR | wendW [] = {'w','e','n','d',0} |
static const WCHAR | whileW [] = {'w','h','i','l','e',0} |
static const WCHAR | xorW [] = {'x','o','r',0} |
struct { | |
const WCHAR * word | |
int token | |
} | keywords [] |
Definition at line 161 of file lex.c.
|
static |
Definition at line 183 of file lex.c.
|
static |
Definition at line 395 of file lex.c.
Referenced by parse_next_token().
|
static |
Definition at line 369 of file lex.c.
Referenced by parse_next_token().
|
static |
|
static |
Definition at line 406 of file lex.c.
Referenced by parser_lex().
|
static |
Definition at line 266 of file lex.c.
|
static |
int parser_lex | ( | void * | lval, |
parser_ctx_t * | ctx | ||
) |
|
static |
WINE_DEFAULT_DEBUG_CHANNEL | ( | vbscript | ) |
Definition at line 40 of file lex.c.
Referenced by FindWindowExA(), get_system_propval(), set_profile_device_key(), SetupOpenInfFileA(), test_builtinproc(), test_DsClientMakeSpnForTargetServer(), test_IsWindowUnicode(), test_IWbemPath_GetClassName(), test_IWbemPath_GetText(), test_IWbemPath_SetClassName(), test_MDI_create(), test_stub(), and wmain().
Definition at line 42 of file lex.c.
Referenced by build_resource_string(), client_security_SetBlanket(), is_valid_xml_space_value(), parse_resource(), register_dsound_devices(), register_midiout_devices(), register_waveout_devices(), test_CreateTypeLib(), test_dsound(), test_midiout(), test_waveout(), and wbem_services_OpenNamespace().
Definition at line 49 of file lex.c.
Referenced by reader_parse_stag().
Definition at line 61 of file lex.c.
Referenced by build_signature_table_name(), test_get_atom_name(), test_graph_builder_connect(), and test_local_get_atom_name().
Definition at line 62 of file lex.c.
Referenced by CallWindowProcT(), column_fill_hditem(), CreateEditLabelT(), debuglvcolumn_t(), debuglvitem_t(), debugstr_t(), debugtext_t(), debugtext_tn(), EditLblWndProcT(), LISTVIEW_EditLabelT(), LISTVIEW_EndEditLabelT(), LISTVIEW_GetColumnT(), LISTVIEW_GetItemExtT(), LISTVIEW_GetItemT(), LISTVIEW_GetItemTextT(), LISTVIEW_GetStringWidthT(), LISTVIEW_InsertColumnT(), LISTVIEW_InsertItemT(), LISTVIEW_SetColumnT(), LISTVIEW_SetItemT(), LISTVIEW_SetItemTextT(), notify_dispinfoT(), set_main_item(), set_sub_item(), STATUSBAR_SetTextT(), TAB_DumpItemExternalT(), textcmpWT(), textdupTtoW(), textfreeT(), textlenT(), textsetptrT(), TOOLBAR_GetButtonText(), TOOLBAR_SetButtonInfo(), TOOLTIPS_AddToolT(), TOOLTIPS_CopyInfoT(), TOOLTIPS_DelToolT(), TOOLTIPS_EnumToolsT(), TOOLTIPS_GetCurrentToolT(), TOOLTIPS_GetTextT(), TOOLTIPS_GetToolInfoT(), TOOLTIPS_HitTestT(), TOOLTIPS_SetTitleT(), TOOLTIPS_SetToolInfoT(), TOOLTIPS_UpdateTipTextT(), TREEVIEW_DoSetItemT(), TREEVIEW_GetItemT(), TREEVIEW_InsertItemT(), and TREEVIEW_SetItemT().
const struct { ... } keywords[] |
Definition at line 66 of file lex.c.
Referenced by a_to_w_callback(), and EnumerateLoadedModulesW64().
Definition at line 72 of file lex.c.
Referenced by COMM_ParseOnOff(), HTMLDocument_put_designMode(), and update_window_doc().
Definition at line 83 of file lex.c.
Referenced by COMM_BuildNewCommDCB().
Definition at line 86 of file lex.c.
Referenced by COMM_BuildNewCommDCB().