public class JavaClassDefinition extends ClassDefinition
| Modifier and Type | Class and Description |
|---|---|
private static class |
JavaClassDefinition.FuzzyMatch
Store a method and its match criteria in a sortable form.
|
private static class |
JavaClassDefinition.MethodMatch
Store a method.
|
ClassDefinition.DataStoreType| Modifier and Type | Field and Description |
|---|---|
private java.lang.Class |
cls
Contained Java class instance for which we are the wrapper.
|
nconvertABBREVIATED, AGGREGATE, ALTER_TABLE, AMBIGUOUS, ANNOTATION, ANY_LOCK, AREA, ARGUMENTS, AS_BUTTON, ASSIGN, ASSIGNMENT, AST_NODE, AT, ATTR_CHAR, ATTR_CLASS, ATTR_COM_HANDLE, ATTR_DATE, ATTR_DATETIME, ATTR_DATETIME_TZ, ATTR_DEC, ATTR_HANDLE, ATTR_INT, ATTR_INT64, ATTR_LOGICAL, ATTR_LONGCHAR, ATTR_MEMPTR, ATTR_POLY, ATTR_RAW, ATTR_RECID, ATTR_ROWID, BACKSLASH, BEGIN_ATTR, BEGIN_ATTR_METH, BEGIN_BUFFERTYPES, BEGIN_CALLGRAPH, BEGIN_FIELDTYPES, BEGIN_FUNCTYPES, BEGIN_FWD_EXTENSION, BEGIN_INDEX_MATCH_TYPES, BEGIN_LVALUE, BEGIN_METATYPES, BEGIN_METH, BEGIN_MULTIWORD, BEGIN_NATIVE_VARTYPES, BEGIN_OO_METH, BEGIN_RECORDTYPES, BEGIN_RESERVED, BEGIN_SCHEMA, BEGIN_SCHEMAKW, BEGIN_UNRESERVED, BEGIN_VARTYPES, BEGIN_WIDGETS, BEGINS_MATCH, BITWISE_AND, BITWISE_NOT, BITWISE_OR, BITWISE_XOR, BLOCK, BOGUS, BOOL_FALSE, BOOL_TRUE, BROKEN_PREPROC_ARG, BUFFER, BUFFER_SCOPE, CARET, CATEGORY, CHILD_PROCESS, CLASS_DEF, CLASS_EVENT, CLASS_NAME, CLIENT_WHERE, CLIENT_WHERE_SUBST, CLOSE_CURSOR, CLOSE_QUERY, CLOSE_STORED_PROCEDURE, CMT_CLOSE, CMT_OPEN, COLON, COLOR_PHRASE, COLUMN_LIST, COLUMN_REF, COM_INVOCATION, COM_METHOD, COM_OBJECT, COM_PARAMETER, COM_PROPERTY, COMMA, COMMAND_TEXT, COMMAND_TOKENS, COMMENT, CONNECT_OPTIONS, CONNECT_TEXT, CONSTRUCTOR, CONTENT_ARRAY, COPY_FROM_SB, COPY_TO_SB, CREATE_ALIAS, CREATE_BROWSE, CREATE_BUFFER, CREATE_CALL, CREATE_CLIENT_PRINCIPAL, CREATE_DATA_SOURCE, CREATE_DATABASE, CREATE_DATASET, CREATE_GENERIC_OCX, CREATE_INDEX, CREATE_OBJECT, CREATE_QUERY, CREATE_REPORT, CREATE_SAX_ATTRIBUTES, CREATE_SAX_READER, CREATE_SAX_WRITER, CREATE_SERVER, CREATE_SMTP_EMAIL, CREATE_SOAP_HEADER, CREATE_SOAP_HEADER_ENTRYREF, CREATE_SOCKET, CREATE_SRV_SOCKET, CREATE_TABLE, CREATE_TEMP_TABLE, CREATE_TIMER, CREATE_VIEW, CREATE_WIDGET, CREATE_WIDGET_POOL, CREATE_X_DOCUMENT, CREATE_X_NODEREF, CUSTOMER_SPECIFIC, CYCLE_ON_LIMIT, DATA_RELATION, DATA_SET, DATA_SOURCE, DATA_SOURCE_BUFFER, DATA_SOURCE_QUERY, DATABASE, DATE_LITERAL, DATETIME_LITERAL, DATETIME_TZ_LITERAL, DB_EVENT, DB_REF_NON_STATIC, DB_SYMBOL, DDE_ADVISE, DDE_EXECUTE, DDE_GET, DDE_INITIATE, DDE_REQUEST, DDE_SEND, DDE_SERVER, DDE_TERMINATE, DEC_LITERAL, DECLARE_CURSOR, DEFINE_BROWSE, DEFINE_BUFFER, DEFINE_BUTTON, DEFINE_DATA_SOURCE, DEFINE_DATASET, DEFINE_ENUM, DEFINE_EVENT, DEFINE_FIELD, DEFINE_FRAME, DEFINE_IMAGE, DEFINE_MENU, DEFINE_PARAMETER, DEFINE_PROPERTY, DEFINE_PROPERTY_GET, DEFINE_PROPERTY_SET, DEFINE_QUERY, DEFINE_RECTANGLE, DEFINE_STREAM, DEFINE_SUB_MENU, DEFINE_TEMP_TABLE, DEFINE_VARIABLE, DEFINE_WORK_TABLE, DELETE_ALIAS, DELETE_FROM, DELETE_OBJECT, DELETE_PROCEDURE, DELETE_WIDGET, DELETE_WIDGET_POOL, DESCRIPTION, DESTRUCTOR, DIGIT, DISABLE_TRIGGERS, DIVIDE, DLL_CALL_TYPE_LITERAL, DOT, DOTNET_DELEGATE, DROP_INDEX, DROP_TABLE, DROP_VIEW, DSTRING, DUMP_NAME, DYNAMIC, EDITING_BLOCK, EMBEDDED_ASSIGNMENT, EMBEDDED_SQL, EMPTY_TEMP_TABLE, END_ATTR, END_ATTR_METH, END_BUFFERTYPES, END_CALLGRAPH, END_FIELDTYPES, END_FUNCTYPES, END_FWD_EXTENSION, END_INDEX_MATCH_TYPES, END_LVALUE, END_METATYPES, END_METH, END_MULTIWORD, END_NATIVE_VARTYPES, END_OO_METH, END_RECORDTYPES, END_RESERVED, END_SCHEMA, END_SCHEMAKW, END_UNRESERVED, END_VARTYPES, END_WIDGETS, ENUM_DEF, ENUM_VALUE, EOF, EQUALITY_MATCH, EQUALS, EVENT, EVENT_LIST, EVENT_SIGNATURE, EXCLUSIVE_LOCK_LITERAL, EXPANDED_SCOPE, EXPORT_FIELD, EXPRESSION, EXTERNAL_PROCEDURE, FIELD_BIGINT, FIELD_BLOB, FIELD_BYTE, FIELD_CHAR, FIELD_CLASS, FIELD_CLOB, FIELD_COM_HANDLE, FIELD_DATE, FIELD_DATETIME, FIELD_DATETIME_TZ, FIELD_DEC, FIELD_DOUBLE, FIELD_FIXCHAR, FIELD_FLOAT, FIELD_HANDLE, FIELD_INT, FIELD_INT64, FIELD_LOGICAL, FIELD_RAW, FIELD_RECID, FIELD_ROWID, FIELD_SHORT, FIELD_TIME, FIELD_TIMESTAMP, FILE_RESOURCE, FILENAME, FILEROOT, FILTER_SPEC, FORM_ITEM, FORMAT_PHRASE, FRAME_ALLOC, FRAME_ELEMENT, FRAME_LOCK, FRAME_PHRASE, FRAME_SCOPE, FRAME_UNLOCK, FREE_REFERENCE, FROZEN, FUNC_CALL_TYPE_LITERAL, FUNC_CHAR, FUNC_CLASS, FUNC_COM_HANDLE, FUNC_DATE, FUNC_DATETIME, FUNC_DATETIME_TZ, FUNC_DEC, FUNC_HANDLE, FUNC_INT, FUNC_INT64, FUNC_LOGICAL, FUNC_LONGCHAR, FUNC_MEMPTR, FUNC_POLY, FUNC_RAW, FUNC_RECID, FUNC_ROWID, FUNCTION, FUNCTION_CALL, GET_ATTR_CTYPE_LITERAL, GROUP_BY, GT, GTE, HANDLE_TO, HEX_DIGIT, HEX_LITERAL, HIDDEN, IMPORT_FIELD, IN_WIDGET_POOL, INCLUDE_FILE, INCLUDES, INCREMENT, INDEX, INDEX_FIELD, INLINE_VAR_DEF, INLINE_VAR_DEF_ARRAY, INNER_BLOCK, INNER_JOIN, INPUT_CLEAR, INPUT_CLOSE, INPUT_FROM, INPUT_OUTPUT_CLOSE, INPUT_OUTPUT_THRU, INPUT_THRU, INSERT_INTO, INT_PROC, INTERFACE_DEF, INTERNAL_PROCEDURE, IO_OPTIONS, IPC_RESOURCE, IS_NOT_NULL, IS_NULL, JUNK, KEY_FIELD, KEY_FUNCTION, KW_3D, KW_ABBV, KW_ABORT, KW_ABS, KW_ABSTRACT, KW_ACC_CHG, KW_ACC_RCHG, KW_ACCEL, KW_ACCUM, KW_ACT_FORM, KW_ACT_WIN, KW_ACTIVATE, KW_ACTIVE, KW_ACTOR, KW_ADD, KW_ADD_1ST, KW_ADD_BCCA, KW_ADD_BUF, KW_ADD_C_C, KW_ADD_C_F, KW_ADD_C_N, KW_ADD_CC_A, KW_ADD_EVTP, KW_ADD_F_F, KW_ADD_F_N, KW_ADD_HENT, KW_ADD_IDXF, KW_ADD_IMG, KW_ADD_INVL, KW_ADD_L_C, KW_ADD_L_N, KW_ADD_LAST, KW_ADD_LIKF, KW_ADD_LIKI, KW_ADD_N_N, KW_ADD_NEWF, KW_ADD_NEWI, KW_ADD_PREL, KW_ADD_REL, KW_ADD_SLOC, KW_ADD_SRCB, KW_ADD_SUP, KW_ADD_TAB, KW_ADD_TO_A, KW_ADM_DATA, KW_ADM_TO, KW_ADVISE, KW_AFT_BUFF, KW_AFT_FILL, KW_AFT_R_F, KW_AFT_ROID, KW_AFT_TBL, KW_ALERT_BX, KW_ALIAS, KW_ALIGN, KW_ALL, KW_ALLW_C_S, KW_ALLW_REP, KW_ALT_KEY, KW_ALTER, KW_ALW_ON_T, KW_AMBIG, KW_ANALYZ, KW_AND, KW_ANSI_ONL, KW_ANY, KW_ANY_KEY, KW_ANY_PRT, KW_ANYWHERE, KW_APP_INFO, KW_APP_PW, KW_APP_UID, KW_APPEND, KW_APPEND_C, KW_APPEND_L, KW_APPL, KW_APPL_A_B, KW_APPL_CBK, KW_APPL_CID, KW_APPLY, KW_AREA, KW_ARR_MSG, KW_AS, KW_AS_THRD, KW_ASC, KW_ASCEND, KW_ASCII_2H, KW_ASK_OVER, KW_ASSEMBLY, KW_ASSIGN, KW_AST_ACTI, KW_ASYNC, KW_ASYNC_RC, KW_ASYNC_RH, KW_AT, KW_AT_W_BRW, KW_ATT_DSRC, KW_ATT_FILE, KW_ATT_PLST, KW_ATT_URL, KW_ATTR, KW_ATTR_NAM, KW_AUD_CTRL, KW_AUD_ENAB, KW_AUD_EV_C, KW_AUD_POL, KW_AUTHBLOB, KW_AUTHEN_F, KW_AUTHORZN, KW_AUTO_COM, KW_AUTO_D_X, KW_AUTO_DEL, KW_AUTO_END, KW_AUTO_GO, KW_AUTO_IND, KW_AUTO_RES, KW_AUTO_RET, KW_AUTO_SYN, KW_AUTO_VAL, KW_AUTO_ZAP, KW_AUTOMATC, KW_AVAIL, KW_AVERAGE, KW_AVG, KW_AVL_FMTS, KW_AVL_MSGS, KW_B_ENDIAN, KW_B4_BUFF, KW_B4_FILL, KW_B4_HIDE, KW_B4_R_F, KW_B4_ROWID, KW_B4_TABLE, KW_BACK_TAB, KW_BACKGRND, KW_BACKSP, KW_BACKWARD, KW_BAS_LOGG, KW_BASE_ADE, KW_BASE_KEY, KW_BASE64_D, KW_BASE64_E, KW_BATCH_MO, KW_BATCH_SZ, KW_BEG_EV_G, KW_BEGINS, KW_BELL, KW_BETWEEN, KW_BGCOLOR, KW_BGCOLRGB, KW_BIGINT, KW_BINARY, KW_BIND, KW_BIND_WH, KW_BL_BTNFN, KW_BL_CGR_K, KW_BL_CURGR, KW_BL_G_KEY, KW_BL_GADD, KW_BL_GCLR, KW_BL_GIFP, KW_BL_GIKEY, KW_BL_IADD, KW_BL_ITMFN, KW_BLANK, KW_BLK_IT_D, KW_BLK_LVL, KW_BLOB, KW_BLOCK, KW_BORD_B_C, KW_BORD_B_P, KW_BORD_L_C, KW_BORD_L_P, KW_BORD_R_C, KW_BORD_R_P, KW_BORD_T_C, KW_BORD_T_P, KW_BOTH, KW_BOTTOM, KW_BOTTOM_C, KW_BOX, KW_BOX_SEL, KW_BR_AGENT, KW_BR_IP, KW_BR_PORT, KW_BR_TZ, KW_BREAK, KW_BREAK_L, KW_BROWSE, KW_BTN_LIST, KW_BTOS, KW_BUF_COMP, KW_BUF_COPY, KW_BUF_CREA, KW_BUF_DEL, KW_BUF_FLD, KW_BUF_GRPI, KW_BUF_GRPN, KW_BUF_HNDL, KW_BUF_NAME, KW_BUF_PARI, KW_BUF_REL, KW_BUF_TENI, KW_BUF_TENN, KW_BUF_VAL, KW_BUF_VLID, KW_BUFFER, KW_BUFFER_C, KW_BUFFER_L, KW_BUFPOOL, KW_BUFRPOOL, KW_BUILD_TR, KW_BUTTON, KW_BY, KW_BY_PTR, KW_BY_REF, KW_BY_VALUE, KW_BY_VAR_P, KW_BYTE, KW_BYTES_R, KW_BYTES_W, KW_C_NOD_D, KW_C_T_V_N, KW_CACHE, KW_CACHE_SZ, KW_CALBGCLR, KW_CALCUFMT, KW_CALENDAR, KW_CALFGCLR, KW_CALFMTST, KW_CALL, KW_CALL_NAM, KW_CALL_TYP, KW_CALLBACK, KW_CALTITBG, KW_CALTITFG, KW_CALTRLFG, KW_CALUPDWN, KW_CALVALUE, KW_CAN_CREA, KW_CAN_DEL, KW_CAN_DO, KW_CAN_DUMP, KW_CAN_FIND, KW_CAN_LOAD, KW_CAN_QRY, KW_CAN_READ, KW_CAN_SET, KW_CAN_WRT, KW_CANC_BRK, KW_CANCEL_B, KW_CANCEL_P, KW_CANCEL_R, KW_CANCELLD, KW_CAPFNT, KW_CAPFNTSZ, KW_CAPS, KW_CARE_PNT, KW_CASE, KW_CASE_SEN, KW_CAST, KW_CATCH, KW_CATEGORY, KW_CBIT, KW_CDECL, KW_CEASE, KW_CENTER, KW_CFG_NAME, KW_CHAINED, KW_CHAR, KW_CHAR_LEN, KW_CHARSET, KW_CHART, KW_CHECK, KW_CHECK_AM, KW_CHECK_BO, KW_CHECKED, KW_CHLD_BUF, KW_CHLD_NUM, KW_CHOICES, KW_CHOOSE, KW_CHR, KW_CLASS, KW_CLEA_TAB, KW_CLEA_WIN, KW_CLEAR, KW_CLIP, KW_CLN_IP, KW_CLN_PORT, KW_CLN_TIME, KW_CLN_TZ, KW_CLNT_C_I, KW_CLNT_DIS, KW_CLNT_PRL, KW_CLNT_TTY, KW_CLNT_TYP, KW_CLNT_WS, KW_CLOB, KW_CLOB_COL, KW_CLOB_CP, KW_CLOB_TYP, KW_CLONE_ND, KW_CLOSE, KW_CLOSE_AP, KW_CLOSE_LG, KW_CLR_ALL, KW_CLR_AP_C, KW_CLR_ATTL, KW_CLR_BCCL, KW_CLR_CC_L, KW_CLR_EMBL, KW_CLR_LOG, KW_CLR_NIML, KW_CLR_NODS, KW_CLR_S_AR, KW_CLR_SEL, KW_CLR_TABS, KW_CLR_TO_L, KW_CLS_TYPE, KW_CNCL_R_A, KW_CNTRL_BX, KW_CNTRL_FR, KW_CNTRL_NM, KW_CODE, KW_CODEBASE, KW_COL, KW_COL_BGC, KW_COL_CP, KW_COL_DC, KW_COL_FGC, KW_COL_FONT, KW_COL_L_SA, KW_COL_LAB, KW_COL_MOV, KW_COL_NODE, KW_COL_OF, KW_COL_PFC, KW_COL_R_O, KW_COL_RES, KW_COL_SCR, KW_COL_SRT, KW_COLL_A_E, KW_COLL_ALL, KW_COLLATE, KW_COLON, KW_COLON_AL, KW_COLOR, KW_COLR_TAB, KW_COLUMNS, KW_COM_DATA, KW_COM_HNDL, KW_COM_SELF, KW_COMBO_BX, KW_COMMAND, KW_COMPARE, KW_COMPARES, KW_COMPILE, KW_COMPILER, KW_COMPLETE, KW_CONN, KW_CONN_ED, KW_CONNTYPE, KW_CONSTRUC, KW_CONTAINS, KW_CONTENTS, KW_CONTROL, KW_CONTROLS, KW_CONVERT, KW_COOKIE_D, KW_COPY, KW_COUNT, KW_COUNT_OF, KW_COVERAGE, KW_CP, KW_CP_CVT, KW_CPCASE, KW_CPCOLL, KW_CPINTERN, KW_CPLOG, KW_CPPRINT, KW_CPRCODEI, KW_CPRCODEO, KW_CPSTREAM, KW_CPTERM, KW_CPY_DSET, KW_CPY_LOB, KW_CPY_SATR, KW_CPY_TTBL, KW_CR_LK_SQ, KW_CRC, KW_CRC_VAL, KW_CRE_IMAG, KW_CREAT_LK, KW_CREAT_ND, KW_CREAT_NN, KW_CREAT_OA, KW_CREAT_RL, KW_CREAT_SN, KW_CREAT_TF, KW_CREATE, KW_CRT_COL, KW_CRT_MIMG, KW_CTOS, KW_CTX, KW_CTX_H, KW_CTX_H_F, KW_CTX_H_ID, KW_CTX_PATH, KW_CTX_POP, KW_CUR_CHAR, KW_CUR_CHG, KW_CUR_COL, KW_CUR_DATE, KW_CUR_DOWN, KW_CUR_ENV, KW_CUR_ITER, KW_CUR_LANG, KW_CUR_LEFT, KW_CUR_LINE, KW_CUR_OFF, KW_CUR_QRY, KW_CUR_R_M, KW_CUR_RES, KW_CUR_RGHT, KW_CUR_RQI, KW_CUR_RSI, KW_CUR_UP, KW_CUR_VAL, KW_CUR_WIN, KW_CURR_TAB, KW_CURRENCY, KW_CURRENT, KW_CURSOR, KW_CUT, KW_CVT_2OFF, KW_CVT_3D_C, KW_CVT_DT, KW_CYCLE, KW_DATA_BND, KW_DATA_E_R, KW_DATA_REL, KW_DATA_SCM, KW_DATA_SM, KW_DATA_SRC, KW_DATA_SRI, KW_DATABASE, KW_DATASET, KW_DATASRV, KW_DATATYPE, KW_DATE, KW_DATE_FMT, KW_DATE_SEP, KW_DATE_TZ, KW_DATETIME, KW_DAY, KW_DB_CTXT, KW_DB_LIST, KW_DB_REF, KW_DB_REM_H, KW_DBCOLL, KW_DBCP, KW_DBG_ALRT, KW_DBG_LST, KW_DBNAME, KW_DBPARAM, KW_DBREST, KW_DBTASKID, KW_DBTYPE, KW_DBVERS, KW_DCLK_EXP, KW_DCOLOR, KW_DD_OTREE, KW_DDE, KW_DDE_ERR, KW_DDE_ID, KW_DDE_ITEM, KW_DDE_NAME, KW_DDE_NOTI, KW_DDE_TOPI, KW_DE_REGIS, KW_DEBLANK, KW_DEBUG, KW_DEBUGGER, KW_DEC, KW_DEC_SEP, KW_DECIMALS, KW_DECL_NSP, KW_DECLARE, KW_DECRYPT, KW_DEF_ACTN, KW_DEF_BUFH, KW_DEF_COMM, KW_DEF_EXTN, KW_DEF_NOXL, KW_DEF_POP, KW_DEF_STR, KW_DEF_UEVM, KW_DEF_VAL, KW_DEF_WIN, KW_DEFAULT, KW_DEFINE, KW_DEFLT_BN, KW_DEL_C_R, KW_DEL_CHAR, KW_DEL_COL, KW_DEL_COOK, KW_DEL_E_L, KW_DEL_FLD, KW_DEL_H_EN, KW_DEL_LINE, KW_DEL_NODE, KW_DEL_PROC, KW_DEL_R_L, KW_DEL_S_C, KW_DEL_S_R, KW_DEL_S_RS, KW_DEL_WORD, KW_DELEGATE, KW_DELETE, KW_DELIMIT, KW_DESCEND, KW_DESCR, KW_DESEL_FR, KW_DESEL_R, KW_DESEL_SR, KW_DESELCTN, KW_DESTRUCT, KW_DET_DSRC, KW_DEVICEID, KW_DIALOG, KW_DICT, KW_DIR, KW_DIRECTRY, KW_DIS_A_ZA, KW_DIS_CEDT, KW_DIS_D_TR, KW_DIS_L_TR, KW_DIS_REDR, KW_DIS_STRP, KW_DISABL_C, KW_DISABLE, KW_DISABLED, KW_DISCONN, KW_DISP, KW_DISP_MSG, KW_DISP_TYP, KW_DISP_TZ, KW_DISPATCH, KW_DISTINCT, KW_DLL_C_T, KW_DMP_NAME, KW_DO, KW_DOMAIN_D, KW_DOMAIN_N, KW_DOMAIN_T, KW_DOS, KW_DOUBLE, KW_DOWN, KW_DRAG_EN, KW_DRAG_NOD, KW_DRAG_OVR, KW_DRAGDROP, KW_DROP, KW_DROP_DWN, KW_DROP_FN, KW_DROP_LST, KW_DROP_TAR, KW_DSET_HND, KW_DSL_MGR, KW_DUMP, KW_DUMP_LGN, KW_DYN_CAST, KW_DYN_CURV, KW_DYN_ENUM, KW_DYN_FUNC, KW_DYN_INVK, KW_DYN_NEW, KW_DYN_NEXV, KW_DYN_PROP, KW_DYNAMIC, KW_E_PROC_C, KW_EACH, KW_ECHO, KW_EDGE_C, KW_EDGE_P, KW_EDIT_B_T, KW_EDIT_C_P, KW_EDIT_C_U, KW_EDIT_CLR, KW_EDIT_CPY, KW_EDIT_CUT, KW_EDIT_PAS, KW_EDIT_TAB, KW_EDIT_UND, KW_EDITING, KW_EDITOR, KW_EH_FL, KW_EH_SR, KW_ELSE, KW_EMB_FILE, KW_EMB_URL, KW_EMPTY, KW_EMPTY_DS, KW_EMPTY_SN, KW_EMPTY_TT, KW_ENABLE, KW_ENABLE_C, KW_ENABLE_E, KW_ENABLED, KW_ENC_AMK, KW_ENC_SALT, KW_ENCODE, KW_ENCODING, KW_ENCRYPT, KW_END, KW_END_B_SN, KW_END_DOC, KW_END_ELEM, KW_END_ERR, KW_END_EV_G, KW_END_F_D, KW_END_MOV, KW_END_RESZ, KW_END_RRES, KW_END_SEAR, KW_END_USER, KW_ENDKEY, KW_ENS_N_V, KW_ENT_EX_L, KW_ENT_TLST, KW_ENTER_MB, KW_ENTERED, KW_ENTRY, KW_ENUM, KW_EQ, KW_ERR_CODE, KW_ERR_COL, KW_ERR_OBJD, KW_ERR_ROW, KW_ERR_S_T, KW_ERR_STAT, KW_ERR_STR, KW_ERROR, KW_ESCAPE, KW_ETIME, KW_EVENTS, KW_EVT_ACTI, KW_EVT_GRID, KW_EVT_PROC, KW_EVT_TYPE, KW_EXC_LOCK, KW_EXCEPT, KW_EXCL_ID, KW_EXCL_WEB, KW_EXEC_LOG, KW_EXECUTE, KW_EXISTS, KW_EXIT, KW_EXITCODE, KW_EXP, KW_EXP_N_IC, KW_EXP_NODE, KW_EXP_ON_E, KW_EXP_SCLK, KW_EXPA_ALL, KW_EXPAND, KW_EXPANDBL, KW_EXPLICIT, KW_EXPORT, KW_EXPORT_P, KW_EXTENDED, KW_EXTENT, KW_EXTERN, KW_F_KEY_H, KW_FETCH, KW_FETCH_SR, KW_FGCOLOR, KW_FGCOLRGB, KW_FIELD, KW_FIL_C_D, KW_FIL_C_T, KW_FIL_INFO, KW_FIL_M_D, KW_FIL_M_T, KW_FIL_NAME, KW_FIL_OFF, KW_FIL_SIZE, KW_FIL_TYPE, KW_FILE, KW_FILL, KW_FILL_IN, KW_FILL_MOD, KW_FILL_WST, KW_FILLED, KW_FILTERS, KW_FINAL, KW_FINALLY, KW_FIND, KW_FIND_1ST, KW_FIND_BR, KW_FIND_CS, KW_FIND_CUR, KW_FIND_FD, KW_FIND_GLO, KW_FIND_LST, KW_FIND_NO, KW_FIND_NOD, KW_FIND_NXT, KW_FIND_PO, KW_FIND_PRV, KW_FIND_SEL, KW_FIND_UNI, KW_FIND_WA, KW_FINDER, KW_FIR_DSET, KW_FIRST, KW_FIRST_AR, KW_FIRST_BU, KW_FIRST_CH, KW_FIRST_CO, KW_FIRST_DS, KW_FIRST_FM, KW_FIRST_N, KW_FIRST_OB, KW_FIRST_OF, KW_FIRST_PR, KW_FIRST_QR, KW_FIRST_SO, KW_FIRST_SR, KW_FIRST_SS, KW_FIRST_TI, KW_FIT_LCOL, KW_FIX_C_L, KW_FIX_CP, KW_FIXCHAR, KW_FIXD_ONL, KW_FLAGS, KW_FLAT_BUT, KW_FLD_TRG, KW_FLOAT, KW_FLTR_MAP, KW_FMT_DT, KW_FMT_SA, KW_FNT_BOLD, KW_FNT_ITAL, KW_FNT_NAME, KW_FNT_SIZE, KW_FNT_UNDL, KW_FOC_ASEL, KW_FOC_NKEY, KW_FOC_NODE, KW_FOCUS, KW_FOCUS_R, KW_FOCUS_RS, KW_FONT, KW_FONT_TAB, KW_FOR, KW_FORCE_F, KW_FORE, KW_FORM, KW_FORM_INP, KW_FORM_LIN, KW_FORMAT, KW_FORMATTE, KW_FORWARD, KW_FR_COL, KW_FR_DB, KW_FR_DOWN, KW_FR_FIELD, KW_FR_FILE, KW_FR_INDEX, KW_FR_LINE, KW_FR_NAME, KW_FR_ROW, KW_FR_SPACE, KW_FR_VAL, KW_FR_X, KW_FR_Y, KW_FRAGMENT, KW_FRAME, KW_FREQ, KW_FROM, KW_FROM_CHR, KW_FROM_CUR, KW_FROM_PIX, KW_FROZEN, KW_FS_NKEY, KW_FS_NODE, KW_FULL_H_C, KW_FULL_H_P, KW_FULL_W_C, KW_FULL_W_P, KW_FULLPATH, KW_FUNC_C_T, KW_FUNCT, KW_FV_NODE, KW_FWD_DRIV, KW_FWD_LOGF, KW_FWD_ONLY, KW_G_C_BGCO, KW_G_C_FGCO, KW_G_COL_P, KW_G_COL_W, KW_GEN_MD5, KW_GEN_PBEK, KW_GEN_PBES, KW_GEN_RNDK, KW_GEN_UUID, KW_GET, KW_GET_1ST, KW_GET_A_CT, KW_GET_A_N, KW_GET_ATTL, KW_GET_ATTR, KW_GET_B_A, KW_GET_B_OR, KW_GET_BCCL, KW_GET_BDAT, KW_GET_BITS, KW_GET_BLUE, KW_GET_BR_C, KW_GET_BUFH, KW_GET_BYTE, KW_GET_BYTS, KW_GET_C_S, KW_GET_CBPC, KW_GET_CBPN, KW_GET_CC_L, KW_GET_CFG, KW_GET_CFGV, KW_GET_CGI, KW_GET_CGIL, KW_GET_CGIV, KW_GET_CGL, KW_GET_CGLV, KW_GET_CHG, KW_GET_CHLD, KW_GET_CLL, KW_GET_CLNT, KW_GET_CODP, KW_GET_COLL, KW_GET_COOK, KW_GET_CREL, KW_GET_CUR, KW_GET_D_E, KW_GET_D_F, KW_GET_DBCL, KW_GET_DBL, KW_GET_DIR, KW_GET_DS_B, KW_GET_DYN, KW_GET_EMBL, KW_GET_ERRC, KW_GET_ERRR, KW_GET_FCN, KW_GET_FILE, KW_GET_FLD, KW_GET_FLT, KW_GET_FNAM, KW_GET_FOFF, KW_GET_GRN, KW_GET_HD_E, KW_GET_I64, KW_GET_IBNN, KW_GET_IBQN, KW_GET_ITER, KW_GET_K_V, KW_GET_L_V, KW_GET_LAST, KW_GET_LIC, KW_GET_LNBI, KW_GET_LONG, KW_GET_LPRM, KW_GET_MOP, KW_GET_MSG, KW_GET_MSGG, KW_GET_MSGS, KW_GET_N_AT, KW_GET_N_BG, KW_GET_N_FG, KW_GET_N_HC, KW_GET_N_N, KW_GET_NEXT, KW_GET_NLEV, KW_GET_NODE, KW_GET_NSN, KW_GET_NTXT, KW_GET_NUM, KW_GET_NVV, KW_GET_PAR, KW_GET_PARN, KW_GET_PREV, KW_GET_PROP, KW_GET_PRT, KW_GET_PSN, KW_GET_PTR, KW_GET_QNBI, KW_GET_R_R, KW_GET_RED, KW_GET_REL, KW_GET_RGB, KW_GET_S_O, KW_GET_SELW, KW_GET_SER, KW_GET_SHRT, KW_GET_SIG, KW_GET_SIMG, KW_GET_SNC, KW_GET_SRCB, KW_GET_STR, KW_GET_SZ, KW_GET_T_S, KW_GET_TBI, KW_GET_TBNN, KW_GET_TBQN, KW_GET_THCH, KW_GET_THPX, KW_GET_TI, KW_GET_TNOD, KW_GET_TO_L, KW_GET_TOPB, KW_GET_TWCH, KW_GET_TWPX, KW_GET_U_F, KW_GET_UBI, KW_GET_UL, KW_GET_USHT, KW_GET_VAL, KW_GET_VBI, KW_GET_VBNN, KW_GET_VBQN, KW_GET_WAIT, KW_GET_WKDR, KW_GETATTRI, KW_GETCLASS, KW_GLOBAL, KW_GO, KW_GO_ON, KW_GO_PEND, KW_GOTO, KW_GRANT, KW_GRAPHIC, KW_GRD_F_H, KW_GRD_F_V, KW_GRD_SNAP, KW_GRD_UHC, KW_GRD_UHP, KW_GRD_UWC, KW_GRD_UWP, KW_GRD_VIS, KW_GROUP, KW_GROUP_BX, KW_GT, KW_GTE, KW_GUID, KW_GW, KW_H_SCRL_P, KW_HANDLE, KW_HANDLER, KW_HAS_LOBS, KW_HAS_REC, KW_HAVING, KW_HEADER, KW_HEIGHT_C, KW_HEIGHT_P, KW_HELP, KW_HELP_SA, KW_HELP_TOP, KW_HEX_DECD, KW_HEX_ENCD, KW_HID_FLD, KW_HID_FLDL, KW_HIDDEN, KW_HIDE, KW_HINT, KW_HIT_TEST, KW_HIT_TFWD, KW_HOME, KW_HONOR_PK, KW_HONOR_RK, KW_HORIZ, KW_HOST_B_O, KW_HTML_BWS, KW_HTML_CHS, KW_HTML_ENC, KW_HTML_EOL, KW_HTML_EOP, KW_HTML_FRB, KW_HTML_FRE, KW_HTML_H_B, KW_HTML_H_E, KW_HTML_T_B, KW_HTML_T_E, KW_HTMLERR, KW_HWND, KW_HYPERLNK, KW_ICFPARM, KW_ICON, KW_IDEPHWND, KW_IDEWNTYP, KW_IDX_FLD, KW_IDX_HINT, KW_IDX_INFO, KW_IDX_REPO, KW_IF, KW_IGN_CMOD, KW_IL_BGCOL, KW_IL_HEIGH, KW_IL_IMG, KW_IL_LIST, KW_IL_MASK, KW_IL_OVER, KW_IL_UMASK, KW_IL_WIDTH, KW_IMAGE, KW_IMG_DOWN, KW_IMG_INS, KW_IMG_LIST, KW_IMG_ONLY, KW_IMG_SZ, KW_IMG_SZ_C, KW_IMG_SZ_P, KW_IMG_UP, KW_IMM_DISP, KW_IMP_NODE, KW_IMP_PRNC, KW_IMPLEMTS, KW_IMPORT, KW_IN, KW_IN_HNDL, KW_IN_OUT, KW_INACTIVE, KW_INC_EX_I, KW_INCR, KW_INDENT, KW_INDEX, KW_INDICAT, KW_INFO, KW_INH_BGC, KW_INH_FGC, KW_INHERITS, KW_INIT, KW_INIT_C_P, KW_INIT_D_T, KW_INIT_DIR, KW_INIT_FLT, KW_INIT_SA, KW_INIT_SES, KW_INITIATE, KW_INNER, KW_INNER_C, KW_INNER_L, KW_INPT_VAL, KW_INPUT, KW_INS_ATTR, KW_INS_B4, KW_INS_BTAB, KW_INS_COL, KW_INS_FILE, KW_INS_FLD, KW_INS_FLDD, KW_INS_FLDL, KW_INS_MODE, KW_INS_ROW, KW_INS_STR, KW_INS_TAB, KW_INSERT, KW_INST_PRC, KW_INT, KW_INT_ENT, KW_INT64, KW_INTERFAC, KW_INTERVAL, KW_INTO, KW_INVOKE, KW_IP_TIME, KW_IS, KW_IS_ATTR, KW_IS_C_VIS, KW_IS_CLASS, KW_IS_COLCP, KW_IS_CP_FX, KW_IS_DB_MT, KW_IS_JSON, KW_IS_LEAD, KW_IS_M_TEN, KW_IS_MSEL, KW_IS_N_EXP, KW_IS_OPEN, KW_IS_P_SET, KW_IS_PART, KW_IS_R_SEL, KW_IS_SEL, KW_IS_XML, KW_ISO_DATE, KW_ITEM, KW_ITEM_ROW, KW_ITER_CHG, KW_IUNKNOWN, KW_JAVA, KW_JOIN, KW_JOIN_BY, KW_KBLABEL, KW_KEEP_CON, KW_KEEP_MSG, KW_KEEP_SEC, KW_KEEP_TAB, KW_KEEP_ZOR, KW_KEY, KW_KEYCODE, KW_KEYFUNC, KW_KEYLAB, KW_KEYS, KW_KPAD_CLE, KW_KPAD_HOT, KW_KPAD_QRY, KW_KW, KW_KW_ALL, KW_L_ENDIAN, KW_L_TRIM, KW_LAB_BGC, KW_LAB_DC, KW_LAB_FGC, KW_LAB_FONT, KW_LAB_H_C, KW_LAB_PFC, KW_LABEL, KW_LABEL_SA, KW_LABELS, KW_LANDSCAP, KW_LANGUAGE, KW_LARGE, KW_LAST, KW_LAST_AR, KW_LAST_BAT, KW_LAST_CH, KW_LAST_EVT, KW_LAST_FRM, KW_LAST_OBJ, KW_LAST_OF, KW_LAST_PRC, KW_LAST_SOC, KW_LAST_SRV, KW_LAST_SS, KW_LAST_TI, KW_LASTKEY, KW_LC, KW_LCD_REFR, KW_LCD_SWIN, KW_LCD_WSTR, KW_LCHR_2NV, KW_LDBNAME, KW_LEAVE, KW_LEFT, KW_LEFT_AL, KW_LEFT_END, KW_LEFT_MC, KW_LEFT_MD, KW_LEFT_MDC, KW_LEFT_MU, KW_LENGTH, KW_LG_2_SM, KW_LIB, KW_LIB_C_C, KW_LIKE, KW_LIKE_SEQ, KW_LINE, KW_LINE_CNT, KW_LIST_ITM, KW_LIST_PNM, KW_LISTING, KW_LISTINGS, KW_LIT_QSTN, KW_LOAD, KW_LOAD_DMN, KW_LOAD_I_D, KW_LOAD_I_I, KW_LOAD_I_U, KW_LOAD_ICO, KW_LOAD_IMG, KW_LOAD_M_P, KW_LOAD_PIC, KW_LOAD_S_I, KW_LOADCTRL, KW_LOB_AREA, KW_LOB_BYTE, KW_LOB_DIR, KW_LOB_SIZE, KW_LOC_C_N, KW_LOC_HOST, KW_LOC_L_N, KW_LOC_NAME, KW_LOC_P_ID, KW_LOC_PORT, KW_LOC_S_ID, KW_LOC_TYPE, KW_LOC_V_I, KW_LOCK_REG, KW_LOCKED, KW_LOG, KW_LOG_A_EV, KW_LOG_E_TS, KW_LOG_EN_T, KW_LOG_HOST, KW_LOG_ID, KW_LOG_MGR, KW_LOG_STAT, KW_LOG_THRS, KW_LOGF_NAM, KW_LOGG_LEV, KW_LOGICAL, KW_LOGOUT, KW_LONG, KW_LONGCHAR, KW_LOOKAHD, KW_LOOKUP, KW_LST_EVNT, KW_LST_PAIR, KW_LST_QRY, KW_LST_SET, KW_LST_WID, KW_LT, KW_LTE, KW_M_D_I_P, KW_M_U_I_P, KW_MACH_CLS, KW_MAINMENU, KW_MAN_HIGH, KW_MAND, KW_MAP, KW_MARG_EX, KW_MARG_H_C, KW_MARG_H_P, KW_MARG_W_C, KW_MARG_W_P, KW_MARK_NEW, KW_MARK_RS, KW_MATCHES, KW_MAX, KW_MAX_BTN, KW_MAX_CHAR, KW_MAX_D_G, KW_MAX_H_C, KW_MAX_H_P, KW_MAX_HT, KW_MAX_LVL, KW_MAX_ROWS, KW_MAX_SZ, KW_MAX_VAL, KW_MAX_W_C, KW_MAX_W_P, KW_MAX_WID, KW_MAXIMIZE, KW_MD5_DIG, KW_MD5_VAL, KW_MDL_MC, KW_MDL_MD, KW_MDL_MDC, KW_MDL_MU, KW_MEMBER, KW_MEMPTR, KW_MENU, KW_MENU_BAR, KW_MENU_DRP, KW_MENU_ITM, KW_MENU_KEY, KW_MENU_MOU, KW_MERGE_BF, KW_MERGE_CH, KW_MERGE_RC, KW_MESSAGES, KW_METHOD, KW_MF_DFR, KW_MF_DI, KW_MF_DIP, KW_MF_DL, KW_MF_DR, KW_MF_DT, KW_MF_DTAX, KW_MF_DTAXL, KW_MF_DTAXR, KW_MF_DTB, KW_MF_DTBL, KW_MF_DTBR, KW_MF_DTSX, KW_MF_GF, KW_MF_GFH, KW_MF_GFSD, KW_MF_GFSR, KW_MF_GPH, KW_MF_GPN, KW_MF_GPW, KW_MF_GTW, KW_MF_GXY, KW_MF_GZF, KW_MF_INIT, KW_MF_IR, KW_MF_MPDF, KW_MF_P2MU, KW_MF_RP, KW_MF_SF, KW_MF_SFC, KW_MF_SFH, KW_MF_SI, KW_MF_SIA, KW_MF_SLA, KW_MF_SLC, KW_MF_SLM, KW_MF_SLS, KW_MF_SNP, KW_MF_SNTL, KW_MF_SPF, KW_MF_SPN, KW_MF_SPNP, KW_MF_SPNT, KW_MF_SPO, KW_MF_SR, KW_MF_STA, KW_MF_STC, KW_MF_STS, KW_MF_SXY, KW_MF_SZF, KW_MIN, KW_MIN_BTN, KW_MIN_CWCH, KW_MIN_CWPX, KW_MIN_H_C, KW_MIN_H_P, KW_MIN_SCHM, KW_MIN_SZ, KW_MIN_VAL, KW_MIN_W_C, KW_MIN_W_P, KW_MNEMON, KW_MOD, KW_MODIFIED, KW_MODIFIRS, KW_MONTH, KW_MOU_MC, KW_MOU_MD, KW_MOU_MDC, KW_MOU_MU, KW_MOU_MVC, KW_MOU_MVD, KW_MOU_MVDC, KW_MOU_MVU, KW_MOU_PTR, KW_MOU_SC, KW_MOU_SD, KW_MOU_SDC, KW_MOU_SU, KW_MOU_XC, KW_MOU_XD, KW_MOU_XDC, KW_MOU_XU, KW_MOUSE, KW_MOV_2_B, KW_MOV_2_T, KW_MOV_2EOF, KW_MOV_A_T, KW_MOV_B_T, KW_MOV_COL, KW_MOVABLE, KW_MOVE, KW_MPE, KW_MPTR_2NV, KW_MS_CLICK, KW_MS_DBCLK, KW_MS_DOWN, KW_MS_MOVE, KW_MS_UP, KW_MSG, KW_MSG_AFNT, KW_MSG_AMSG, KW_MSG_AREA, KW_MSG_DIG, KW_MSG_LINE, KW_MSICON, KW_MSPNTNUM, KW_MTIME, KW_MULT_CMP, KW_MULT_KEY, KW_MULTI_IN, KW_MULTIPLE, KW_MUST_EXI, KW_MUST_UND, KW_N_AEDIT, KW_N_BEDIT, KW_N_CLICK, KW_N_COLED, KW_N_COLING, KW_N_EXPED, KW_N_EXPING, KW_N_HEIGHT, KW_N_KEY_ID, KW_NAME, KW_NAMESP_P, KW_NAMESP_U, KW_NATIVE, KW_NE, KW_NEEDS_AP, KW_NEEDS_PR, KW_NESTED, KW_NEW, KW_NEW_INST, KW_NEW_LBL, KW_NEW_LINE, KW_NEW_ROW, KW_NEW_SESS, KW_NEXT, KW_NEXT_COL, KW_NEXT_ERR, KW_NEXT_FR, KW_NEXT_PMT, KW_NEXT_RID, KW_NEXT_SIB, KW_NEXT_TAB, KW_NEXT_VAL, KW_NEXTWORD, KW_NNMSP_SL, KW_NO_APPLY, KW_NO_ARMSG, KW_NO_ASSGN, KW_NO_ATTR, KW_NO_ATTRL, KW_NO_AUTOV, KW_NO_BIND, KW_NO_BOX, KW_NO_COLS, KW_NO_CONS, KW_NO_CUR_V, KW_NO_CV_3D, KW_NO_CVT, KW_NO_DEBUG, KW_NO_DRAG, KW_NO_ECHO, KW_NO_EH_FL, KW_NO_EH_SR, KW_NO_EM_SP, KW_NO_EMBED, KW_NO_ERROR, KW_NO_FILL, KW_NO_FOCUS, KW_NO_HELP, KW_NO_HIDE, KW_NO_IDX_H, KW_NO_INHBG, KW_NO_INHFG, KW_NO_JOIN, KW_NO_LABEL, KW_NO_LOBS, KW_NO_LOCK, KW_NO_LOOKA, KW_NO_MAP, KW_NO_MSG, KW_NO_OVRRD, KW_NO_PAUSE, KW_NO_PRE, KW_NO_RET_V, KW_NO_ROW_M, KW_NO_SCH_M, KW_NO_SCR_V, KW_NO_SEP_C, KW_NO_SEPS, KW_NO_TAB_S, KW_NO_UNDL, KW_NO_UNDO, KW_NO_VALID, KW_NO_WAIT, KW_NO_WRAP, KW_NODE_BLD, KW_NODE_CHE, KW_NODE_CNT, KW_NODE_EXP, KW_NODE_ICO, KW_NODE_ID, KW_NODE_IDX, KW_NODE_KEY, KW_NODE_PAR, KW_NODE_TXT, KW_NODE_V2M, KW_NODE_VAL, KW_NODES, KW_NODV_2LC, KW_NON_SER, KW_NONE, KW_NORMAL, KW_NORMALZE, KW_NOT, KW_NOT_ACTV, KW_NOT_CS, KW_NOW, KW_NULL, KW_NULLALWD, KW_NUM_2RTN, KW_NUM_ALIA, KW_NUM_BUFF, KW_NUM_BUTT, KW_NUM_CH_R, KW_NUM_CHLN, KW_NUM_COL, KW_NUM_COPY, KW_NUM_D_P, KW_NUM_DBS, KW_NUM_DROP, KW_NUM_ENT, KW_NUM_FLD, KW_NUM_FMT, KW_NUM_FMTS, KW_NUM_HD_E, KW_NUM_ITER, KW_NUM_ITMS, KW_NUM_LK_C, KW_NUM_LNS, KW_NUM_LOGF, KW_NUM_MSG, KW_NUM_PARM, KW_NUM_PNTS, KW_NUM_REF, KW_NUM_REL, KW_NUM_REPL, KW_NUM_RES, KW_NUM_SEP, KW_NUM_SR, KW_NUM_SRCB, KW_NUM_SW, KW_NUM_TABS, KW_NUM_TOPB, KW_NUM_V_C, KW_NUMERIC, KW_OBJECT, KW_OCT_LEN, KW_OCX_MBTN, KW_OCX_MSHT, KW_OCX_MSX, KW_OCX_MSY, KW_OF, KW_OFF, KW_OFF_END, KW_OFF_HOME, KW_OK, KW_OK_CAN, KW_OLD, KW_OLE_AEFF, KW_OLE_CDRG, KW_OLE_DATF, KW_OLE_DD, KW_OLE_DEFC, KW_OLE_DGMD, KW_OLE_DGOV, KW_OLE_DRAG, KW_OLE_DRMD, KW_OLE_EFFE, KW_OLE_GIVF, KW_OLE_INVL, KW_OLE_NAML, KW_OLE_SETD, KW_OLE_STAT, KW_OLE_STDG, KW_OLE_X, KW_OLE_Y, KW_ON, KW_ON_FR_B, KW_ONLY, KW_OPEN, KW_OPEN_L_A, KW_OPEN_URL, KW_OPENHTML, KW_OPENMIME, KW_OPENPAGE, KW_OPENPOPU, KW_OPSYS, KW_OPTION, KW_OPTIONS, KW_OPTIONSF, KW_OR, KW_ORD_JOIN, KW_ORDER, KW_ORDINAL, KW_ORG_HAND, KW_ORG_ROID, KW_OS_APPND, KW_OS_CMD, KW_OS_COPY, KW_OS_DEL, KW_OS_DIR, KW_OS_DRV, KW_OS_ERR, KW_OS_G_ENV, KW_OS_MKDIR, KW_OS_REN, KW_OS_UID, KW_OS2, KW_OTHER, KW_OUT_HDR, KW_OUT_HH, KW_OUT_JOIN, KW_OUT_MSGS, KW_OUTER, KW_OUTPUT, KW_OUTPUTCT, KW_OVERLAY, KW_OVERRIDE, KW_OWN_DOC, KW_OWNER, KW_P2J_RC, KW_PAGE, KW_PAGE_B, KW_PAGE_DWN, KW_PAGE_LFT, KW_PAGE_NUM, KW_PAGE_RT, KW_PAGE_SZ, KW_PAGE_T, KW_PAGE_UP, KW_PAGE_WID, KW_PAGED, KW_PAR_BUFF, KW_PAR_FLDA, KW_PAR_FLDB, KW_PAR_IFLD, KW_PAR_IREL, KW_PAR_REL, KW_PAR_W_C, KW_PARENT, KW_PARM, KW_PARSE_ST, KW_PART_KEY, KW_PASCAL, KW_PASSWD_F, KW_PASTE, KW_PATHNAME, KW_PAUSE, KW_PB_APPEA, KW_PB_BRSTY, KW_PB_ENABL, KW_PB_MAX, KW_PB_MIN, KW_PB_ORIEN, KW_PB_SCROL, KW_PB_VALUE, KW_PBE_H_AL, KW_PBE_KEYR, KW_PDBNAME, KW_PERF, KW_PERSIST, KW_PFCOLOR, KW_PICK, KW_PICK_ARE, KW_PICK_BTH, KW_PIX_COL, KW_PIX_ROW, KW_PIXELS, KW_PK_PRIV, KW_PK_PROT, KW_POLY, KW_POP_MENU, KW_POP_ONLY, KW_PORTRAIT, KW_POS, KW_POSTMSG, KW_PRE_LBL, KW_PRECISN, KW_PREF_DS, KW_PREP_STR, KW_PREPARED, KW_PREPROC, KW_PRESEL, KW_PREV, KW_PREV_COL, KW_PREV_FR, KW_PREV_SIB, KW_PREV_T_I, KW_PREVWORD, KW_PRIM_P_P, KW_PRIMARY, KW_PRINT, KW_PRINTER, KW_PRIV_DAT, KW_PRIVATE, KW_PRIVILEG, KW_PRMT_FOR, KW_PRO_ARCH, KW_PROC, KW_PROC_C_T, KW_PROC_COM, KW_PROC_HND, KW_PROC_ST, KW_PROC_T_B, KW_PROC_TXT, KW_PROC_W_R, KW_PROCESS, KW_PROCNAME, KW_PROCTYPE, KW_PRODATAS, KW_PROFILER, KW_PROFILNG, KW_PROG_BAR, KW_PROG_SRC, KW_PROGNAME, KW_PROGRESS, KW_PROMPT, KW_PROMSGS, KW_PROPATH, KW_PROPERTY, KW_PROTECTD, KW_PROVER, KW_PROX_PWD, KW_PROX_UID, KW_PROXY, KW_PRS_C_D, KW_PRS_PROC, KW_PRT_C_H, KW_PRT_HDC, KW_PRT_NAME, KW_PRT_PORT, KW_PRT_SET, KW_PSC, KW_PUB_EVTS, KW_PUB_ID, KW_PUBLIC, KW_PUBLISH, KW_PUT, KW_PUT_BITS, KW_PUT_BYTE, KW_PUT_BYTS, KW_PUT_DBL, KW_PUT_FLT, KW_PUT_I64, KW_PUT_K_V, KW_PUT_LONG, KW_PUT_SHT, KW_PUT_STR, KW_PUT_UL, KW_PUT_USHT, KW_QRY_CLOS, KW_QRY_OFF, KW_QRY_OPEN, KW_QRY_PREP, KW_QRY_TUNE, KW_QUAL_UID, KW_QUE_MSG, KW_QUERY, KW_QUEST, KW_QUIT, KW_QUOTER, KW_R_INDEX, KW_R_TRIM, KW_RADIO_B, KW_RADIO_S, KW_RANDOM, KW_RAW, KW_RAW_TRAN, KW_RCOD_INF, KW_READ, KW_READ_AVL, KW_READ_E_N, KW_READ_FIL, KW_READ_JSN, KW_READ_ONL, KW_READ_RES, KW_READ_XML, KW_READ_XSC, KW_READKEY, KW_REAL, KW_REC_LEN, KW_RECALL, KW_RECID, KW_RECT, KW_RECURSE, KW_REF_ONLY, KW_REFR_A_P, KW_REFRABLE, KW_REFRESH, KW_REG_DMN, KW_REGISTER, KW_REJ_CHGS, KW_REJ_RCHG, KW_REJECTED, KW_REL_FLDS, KW_RELEASE, KW_RELS_ACT, KW_RELSESID, KW_REM_ATTR, KW_REM_CHLD, KW_REM_EVTP, KW_REM_HOST, KW_REM_NOCO, KW_REM_NODE, KW_REM_PORT, KW_REM_SUP, KW_REMOTE, KW_REP_CHLD, KW_REP_STXT, KW_REPEAT, KW_REPL_CRE, KW_REPL_DEL, KW_REPL_WRI, KW_REPLACE, KW_REPORT, KW_REPORTS, KW_REPOS, KW_REPOS_2I, KW_REPOS_2R, KW_REPOS_B, KW_REPOS_F, KW_REPOS_M, KW_REQ_INFO, KW_REQUEST, KW_RES_BASE, KW_RESET, KW_RESIZABL, KW_RESIZE, KW_RESORT, KW_REST_RID, KW_REST_ROW, KW_RESULT, KW_RESUME_D, KW_RET_2SD, KW_RET_INS, KW_RET_SHAP, KW_RET_VAL, KW_RET_VDT, KW_RET_VLT, KW_RETAIN, KW_RETRY, KW_RETRY_C, KW_RETURN, KW_RETURNS, KW_REV_FROM, KW_REVERT, KW_REVOKE, KW_RFRSH_UI, KW_RGB_VAL, KW_RIGHT, KW_RIGHT_AL, KW_ROLE, KW_ROLES, KW_ROUND, KW_ROUNDED, KW_ROUTINEL, KW_ROW, KW_ROW_CRT, KW_ROW_CRTD, KW_ROW_DEL, KW_ROW_DELD, KW_ROW_DISP, KW_ROW_ENTR, KW_ROW_H_C, KW_ROW_H_P, KW_ROW_LEAV, KW_ROW_MARK, KW_ROW_MODD, KW_ROW_OF, KW_ROW_RESZ, KW_ROW_STAT, KW_ROW_UMOD, KW_ROW_UPD, KW_ROWID, KW_RPT_ADDC, KW_RPT_CAP, KW_RPT_CSV, KW_RPT_DOCX, KW_RPT_DSGN, KW_RPT_GSRC, KW_RPT_GSRR, KW_RPT_HTML, KW_RPT_ICSV, KW_RPT_PDF, KW_RPT_RTF, KW_RPT_SRC, KW_RPT_XLS, KW_RPT_XLSX, KW_RSP_INFO, KW_RT_END, KW_RT_MC, KW_RT_MD, KW_RT_MDC, KW_RT_MU, KW_RTOPSYS, KW_RULE, KW_RULE_ROW, KW_RULE_Y, KW_RUN, KW_RUN_PROC, KW_RUN_W_O, KW_S_C_BGCO, KW_S_C_FGCO, KW_S_COL_C, KW_S_COL_W, KW_SAVE, KW_SAVE_AS, KW_SAVE_FIL, KW_SAVE_RCH, KW_SAVE_WST, KW_SAX_ATTR, KW_SAX_COMP, KW_SAX_PARE, KW_SAX_PARF, KW_SAX_PARN, KW_SAX_PARS, KW_SAX_READ, KW_SAX_RUNN, KW_SAX_UNIN, KW_SAX_WBEG, KW_SAX_WCOM, KW_SAX_WCON, KW_SAX_WELM, KW_SAX_WERR, KW_SAX_WIDL, KW_SAX_WRIT, KW_SAX_WTAG, KW_SCH_CHG, KW_SCH_LOC, KW_SCH_MARS, KW_SCH_PATH, KW_SCHEMA, KW_SCR_2CR, KW_SCR_2ITM, KW_SCR_2SR, KW_SCR_COL, KW_SCR_DELT, KW_SCR_HGHT, KW_SCR_LEFT, KW_SCR_MODE, KW_SCR_NODC, KW_SCR_NOT, KW_SCR_NTOP, KW_SCR_OFFS, KW_SCR_RPOS, KW_SCR_RT, KW_SCR_SCAL, KW_SCR_VERT, KW_SCR_WDTH, KW_SCR_WLNS, KW_SCREEN, KW_SCRN_IO, KW_SCRN_LNS, KW_SCRN_VAL, KW_SCROLL, KW_SCROLL_H, KW_SCROLL_V, KW_SCROLLBA, KW_SCROLLBL, KW_SCROLLIN, KW_SDBNAME, KW_SEAL, KW_SEAL_TST, KW_SEAR_SLF, KW_SEAR_TRG, KW_SEARCH, KW_SECTION, KW_SECUR_P, KW_SEEK, KW_SEL_ALL, KW_SEL_END, KW_SEL_FOCR, KW_SEL_LST, KW_SEL_NEXT, KW_SEL_NID, KW_SEL_NKEY, KW_SEL_NODE, KW_SEL_PREV, KW_SEL_ROW, KW_SEL_SFVN, KW_SEL_STRT, KW_SEL_TXT, KW_SELECT, KW_SELECTBL, KW_SELECTED, KW_SELECTN, KW_SELF, KW_SEND, KW_SEND_SQL, KW_SENSITIV, KW_SEP_CONN, KW_SEP_FGC, KW_SEPS, KW_SEQUENCE, KW_SERIALAB, KW_SERIALZH, KW_SERIALZN, KW_SERIALZR, KW_SERVER, KW_SESS_END, KW_SESSION, KW_SESSN_ID, KW_SET, KW_SET_A_CT, KW_SET_A_L, KW_SET_A_N, KW_SET_ACTR, KW_SET_ACTX, KW_SET_ATTR, KW_SET_B_OR, KW_SET_BLUE, KW_SET_BRK, KW_SET_BUF, KW_SET_C_IC, KW_SET_C_P, KW_SET_C_S, KW_SET_C_VI, KW_SET_CB_P, KW_SET_CBAC, KW_SET_CLNT, KW_SET_COMM, KW_SET_CONT, KW_SET_COOK, KW_SET_CPTM, KW_SET_DBCL, KW_SET_DYN, KW_SET_EVMO, KW_SET_F_D, KW_SET_GRN, KW_SET_IMGF, KW_SET_IMGH, KW_SET_IMGW, KW_SET_ISRC, KW_SET_JMOD, KW_SET_JSTX, KW_SET_JSTY, KW_SET_LSTK, KW_SET_M_UN, KW_SET_MSEL, KW_SET_N_BG, KW_SET_N_F, KW_SET_N_FG, KW_SET_N_HC, KW_SET_NODE, KW_SET_NTXT, KW_SET_ODST, KW_SET_OPT, KW_SET_PARM, KW_SET_PENW, KW_SET_PROP, KW_SET_PTR, KW_SET_R_P, KW_SET_RED, KW_SET_RGB, KW_SET_ROLL, KW_SET_RPOS, KW_SET_RRP, KW_SET_S_AR, KW_SET_S_O, KW_SET_SEL, KW_SET_SERD, KW_SET_SNC, KW_SET_SWIN, KW_SET_SZ, KW_SET_T_S, KW_SET_TBME, KW_SET_TN_I, KW_SET_TSTA, KW_SET_U_F, KW_SET_W_S, KW_SET_WAIT, KW_SET_WKDR, KW_SETTINGS, KW_SETUSER, KW_SH_LOCK, KW_SHA1_DIG, KW_SHARED, KW_SHORT, KW_SHOW_BUT, KW_SHOW_HDR, KW_SHOW_ITB, KW_SHOW_ST, KW_SHR_D_F, KW_SIDE_L, KW_SIDE_L_H, KW_SIGNATUR, KW_SILENT, KW_SIMPLE, KW_SING_RUN, KW_SINGLE, KW_SINGLTON, KW_SIZE, KW_SIZE_C, KW_SIZE_P, KW_SKIP, KW_SKIP_D_R, KW_SLIDER, KW_SMAL_ICO, KW_SMAL_TTL, KW_SMALLINT, KW_SMTP_EML, KW_SMTP_PW, KW_SMTP_VAL, KW_SMTPFROM, KW_SMTPHOST, KW_SMTPHTML, KW_SMTPPORT, KW_SMTPREPL, KW_SMTPSUBJ, KW_SMTPTEXT, KW_SMTPUSER, KW_SOAP_F, KW_SOAP_F_A, KW_SOAP_F_C, KW_SOAP_F_D, KW_SOAP_F_N, KW_SOAP_F_R, KW_SOAP_F_S, KW_SOAP_FMH, KW_SOAP_FSC, KW_SOAP_HDR, KW_SOAP_HER, KW_SOAP_VER, KW_SOCKET, KW_SOME, KW_SOR_C_C, KW_SOR_COLS, KW_SORT, KW_SORT_ASC, KW_SORT_MAP, KW_SORT_NUM, KW_SOURCE, KW_SPACE, KW_SPRSHEET, KW_SQL, KW_SQL_WID, KW_SQRT, KW_SRC_PROC, KW_SRV_C_B, KW_SRV_C_BR, KW_SRV_C_C, KW_SRV_C_I, KW_SRV_OP_M, KW_SRV_SOCK, KW_SSL_SRVN, KW_ST_2_FIT, KW_STANDALN, KW_START, KW_START_BS, KW_START_DC, KW_START_EL, KW_START_MV, KW_START_RR, KW_START_RS, KW_START_SC, KW_STARTING, KW_STAT_A_F, KW_STAT_DET, KW_STATIC, KW_STATUS, KW_STATUS_A, KW_STDCALL, KW_STOP, KW_STOP_AFT, KW_STOP_D, KW_STOP_PRS, KW_STOPPED, KW_STORPROC, KW_STR_VAL, KW_STR_XREF, KW_STREAM, KW_STRIC_ER, KW_STRICT, KW_STRING, KW_STRM_HND, KW_STRM_IO, KW_STUP_PAR, KW_SUB_AVG, KW_SUB_CNT, KW_SUB_M_H, KW_SUB_MAX, KW_SUB_MENU, KW_SUB_MIN, KW_SUB_TOT, KW_SUBSCRIB, KW_SUBSTIT, KW_SUBSTR, KW_SUBTYPE, KW_SUM, KW_SUP_NS_P, KW_SUP_PROC, KW_SUP_WARN, KW_SUPER, KW_SUPW_LST, KW_SYM_EN_A, KW_SYM_EN_I, KW_SYM_EN_K, KW_SYM_SUPP, KW_SYNCHRON, KW_SYS_A_B, KW_SYS_DLG, KW_SYS_HELP, KW_SYS_ID, KW_TAB, KW_TAB_CRCL, KW_TAB_HAND, KW_TAB_IDX, KW_TAB_LIST, KW_TAB_ML, KW_TAB_MOD, KW_TAB_NUM, KW_TAB_POS, KW_TAB_SCAN, KW_TAB_SHOW, KW_TAB_STOP, KW_TAB_TRG, KW_TABLE, KW_TABS, KW_TABSET, KW_TAG, KW_TAR_PROC, KW_TARGET, KW_TEMP_DIR, KW_TEMP_TAB, KW_TEN_ID, KW_TENNAME, KW_TERM, KW_TERM_HK, KW_TERMINAT, KW_TEXT, KW_TEXTEDIT, KW_THEN, KW_THIS_OBJ, KW_THIS_PRC, KW_THO_SEP, KW_THR_SAFE, KW_THROUGH, KW_THROW, KW_TIC_MARK, KW_TIME, KW_TIME_SRC, KW_TIMER, KW_TIMESTMP, KW_TIMEZONE, KW_TITL_BGC, KW_TITL_DC, KW_TITL_FGC, KW_TITL_FON, KW_TITLE, KW_TN_TOID, KW_TNOD_VAL, KW_TO, KW_TO_ROWID, KW_TODAY, KW_TOGGL_BX, KW_TOOLTIP, KW_TOOLTIPS, KW_TOP, KW_TOP_COL, KW_TOP_NAVQ, KW_TOP_ONLY, KW_TOPIC, KW_TOTAL, KW_TRAC_CHG, KW_TRACING, KW_TRAILING, KW_TRAN_I_P, KW_TRAN_MOD, KW_TRANS, KW_TRANSPAR, KW_TRC_FILT, KW_TREE_R_H, KW_TREELIST, KW_TREEVIEW, KW_TRIG_COL, KW_TRIG_NOD, KW_TRIGGER, KW_TRIGGERS, KW_TRIM, KW_TRUNC, KW_TT_PREP, KW_TTCP, KW_TXT_CURS, KW_TXT_SEG, KW_TXT_SEL, KW_TYPE, KW_TYPE_OF, KW_U_CTRL, KW_U_MSG, KW_U_PCTRL, KW_U_SERIAL, KW_UNBOX, KW_UNBUF, KW_UNDERLIN, KW_UNDO, KW_UNDO_T_S, KW_UNFORMAT, KW_UNION, KW_UNIQ_ID, KW_UNIQ_KEY, KW_UNIQ_MAT, KW_UNIQUE, KW_UNIX, KW_UNIX_END, KW_UNL_HID, KW_UNLOAD, KW_UNS_BYTE, KW_UNS_LONG, KW_UNS_SHRT, KW_UNSUBSCR, KW_UP, KW_UPD_ATTR, KW_UPDATE, KW_UPLOAD, KW_URL, KW_URL_DECO, KW_URL_ENCO, KW_URL_FLD, KW_URL_FLDL, KW_URL_FMT, KW_URL_PW, KW_URL_UID, KW_USE, KW_USE_DCT, KW_USE_FIL, KW_USE_IDX, KW_USE_REV, KW_USE_TXT, KW_USE_UND, KW_USE_WIDP, KW_USER_ID, KW_USERID, KW_USING, KW_USR_DATA, KW_UTC_OFF, KW_V_N_CNT, KW_V_R_CNT, KW_V_SCRL_P, KW_V6DISP, KW_V6FRAME, KW_VAL_CHG, KW_VAL_ENAB, KW_VAL_EVT, KW_VAL_EXPR, KW_VAL_HND, KW_VAL_MSG, KW_VAL_OBJ, KW_VAL_SEAL, KW_VAL_XML, KW_VALEXP, KW_VALIDATE, KW_VALMG_SA, KW_VALMSG, KW_VALUE, KW_VALUES, KW_VAR, KW_VERBOSE, KW_VERSION, KW_VERT, KW_VIEW, KW_VIEW_AS, KW_VIEW_FCR, KW_VIRT_HC, KW_VIRT_HP, KW_VIRT_WC, KW_VIRT_WP, KW_VISIBLE, KW_VMS, KW_VOID, KW_WA_H_P, KW_WA_W_P, KW_WA_X, KW_WA_Y, KW_WAIT, KW_WAIT_FOR, KW_WARN, KW_WC_AD_AP, KW_WEB, KW_WEB_CTX, KW_WEB_FUP, KW_WEB_OUT, KW_WEEK, KW_WHEN, KW_WHERE, KW_WHERE_ST, KW_WHILE, KW_WID_ENT, KW_WID_HAND, KW_WID_ID, KW_WID_LEAV, KW_WID_POOL, KW_WIDGET, KW_WIDTH, KW_WIDTH_C, KW_WIDTH_P, KW_WIN_CLOS, KW_WIN_DMIN, KW_WIN_MAX, KW_WIN_MIN, KW_WIN_NAME, KW_WIN_NORM, KW_WIN_RESI, KW_WIN_REST, KW_WIN_STAT, KW_WIN_SYS, KW_WINDOW, KW_WITH, KW_WORD_IDX, KW_WORD_WRP, KW_WORK_TAB, KW_WR_CDATA, KW_WR_CHARS, KW_WR_CMNT, KW_WR_D_ELM, KW_WR_DATA, KW_WR_E_ELM, KW_WR_ENT_R, KW_WR_EXDTD, KW_WR_FRAGM, KW_WR_JSON, KW_WR_MSG, KW_WR_PRINS, KW_WR_STAT, KW_WR_XML, KW_WR_XMLSC, KW_WRITE, KW_WUPL_ERR, KW_WUPL_FLS, KW_X, KW_X_DOC, KW_X_NODE, KW_X_OF, KW_XCODE, KW_XML_DTYP, KW_XML_E_EL, KW_XML_NNAM, KW_XML_NTYP, KW_XML_S_ER, KW_XML_SCHP, KW_XML_SNSP, KW_XOR, KW_XPR2PDF, KW_XREF, KW_XREF_XML, KW_Y, KW_Y_OF, KW_YEAR, KW_YEAR_OFF, KW_YES_NO, KW_YES_NO_C, LABEL, LABEL_DEF, LANGUAGES, LBRACKET, LEFT_OUTER_JOIN, LETTER, LIBRARY_PROCEDURE, LIBRARY_REF, LPARENS, LT, LTE, MANDATORY, MANY_TO_ONE, METH_CHAR, METH_CLASS, METH_COM_HANDLE, METH_DATE, METH_DATETIME, METH_DATETIME_TZ, METH_DEC, METH_HANDLE, METH_INT, METH_INT64, METH_LOGICAL, METH_LONGCHAR, METH_MEMPTR, METH_POLY, METH_RAW, METH_RECID, METH_ROWID, METH_VOID, METHOD_DEF, METHOD_INVOCATION, MINUS, MISSING, MONTH_TRASH_MODE, MORE, MULTIPLY, NATIVE_API, NATIVE_PROCESS, NATIVE_PROGRAM_RESOURCE, NETWORK_CONNECTION, NO_LOCK_LITERAL, NO_MATCH, NO_REFERENCE, NO_TRANSACTION, NO_WAIT_LITERAL, NOT_BETWEEN, NOT_ENTERED, NOT_EQ, NOT_EXISTS, NOT_IN, NOT_LIKE, NOT_NULL, NULL_TREE_LOOKAHEAD, NUM_LITERAL, OBJECT_INVOCATION, OCX_CONTROL, ONE_TO_MANY, ONE_TO_ONE, OO_METH_CHAR, OO_METH_CLASS, OO_METH_COM_HANDLE, OO_METH_DATE, OO_METH_DATETIME, OO_METH_DATETIME_TZ, OO_METH_DEC, OO_METH_HANDLE, OO_METH_INT, OO_METH_INT64, OO_METH_LOGICAL, OO_METH_LONGCHAR, OO_METH_MEMPTR, OO_METH_POLY, OO_METH_RAW, OO_METH_RECID, OO_METH_ROWID, OO_METH_VOID, OPEN_CURSOR, OPEN_QUERY, OPTION, ORDER, ORDER_BY, OUTPUT_CLOSE, OUTPUT_THRU, OUTPUT_TO, PARAMETER, PARENT_CHILD_RELATION, PARENT_ID_RELATION, PLUS, PORT_TYPE, POSITION, PROC_CALL_TYPE_LITERAL, PROCEDURE, PROCEDURE_FILE, PROCESS_EVENTS, PROPERTIES, PROPERTY_INVOCATION, PUT_CURSOR, PUT_FIELD, PUT_SCREEN, QUERY, QUERY_SUBST, RANGE_MATCH, RAW_STRING, RBRACKET, READ_AVAILABLE_LITERAL, READ_EXACT_NUM_LITERAL, RECORD_PHRASE, RELEASE_EXTERNAL, RELEASE_OBJECT, RIGHT_OUTER_JOIN, RPARENS, RSTRING, RUN_FILENAME, RUN_FILENAME_ON_SERVER, RUN_INT_PROC, RUN_INT_PROC_ON_SERVER, RUN_LIBRARY_REF, RUN_LIBRARY_REF_ON_SERVER, RUN_PORT_TYPE_ON_SERVER, RUN_PORT_TYPE_VALUE_ON_SERVER, RUN_STORED_PROCEDURE, RUN_SUPER, RUN_VALUE, RUN_VALUE_ON_SERVER, RUNTIME_BROWSE_OPTIONS, RUNTIME_FRAME_OPTIONS, SAVE_CACHE, SCHEMA_FILE, SEARCH_SELF_LITERAL, SEARCH_TARGET_LITERAL, SELF_REFERENCE, SEQUENCE, SET_ATTR_CTYPE_LITERAL, SHARE_LOCK_LITERAL, SHARED_LIBRARY, SLASH_SLASH, SORT_MATCH, SQL_WIDTH, SSTRING, STATEMENT, STATIC_WRAPPER, STR_OPTIONS, STREAM, STRING, STRONG_REFERENCE, SUB_TRANSACTION, SUPPORT_LVL_FULL, SUPPORT_LVL_FULL_WITH_LIMITATIONS, SUPPORT_LVL_NONE, SUPPORT_LVL_PARTIAL, SYM_CHAR, SYMBOL, SYS_HANDLE, SYSTEM_DIALOG_COLOR, SYSTEM_DIALOG_FONT, SYSTEM_DIALOG_GET_DIR, SYSTEM_DIALOG_GET_FILE, SYSTEM_DIALOG_PRINTER_SETUP, TABLE, TEMP_TABLE, TILDE, TRAILER, TRANSACTION, TRANSACTION_DISTINCT, TRANSACTION_MODE_AUTO, TRIGGER_BLOCK, TRIGGER_PHRASE, TRIGGER_PROCEDURE, UN_MINUS, UN_PLUS, UNKNOWN_RESOURCE, UNKNOWN_TOKEN, UNKNOWN_VAL, UNQUOTED_TEXT, UPDATE_SQL, VALEXP, VALID_SYM_CHAR, VALIDATION, VALMG_SA, VALMSG, VAR_BYTE, VAR_CHAR, VAR_CLASS, VAR_COM_HANDLE, VAR_DATE, VAR_DATETIME, VAR_DATETIME_TZ, VAR_DEC, VAR_DOUBLE, VAR_FLOAT, VAR_HANDLE, VAR_INT, VAR_INT64, VAR_LOGICAL, VAR_LONG, VAR_LONGCHAR, VAR_MEMPTR, VAR_POLY, VAR_RAW, VAR_RECID, VAR_ROWID, VAR_SHORT, VAR_ULONG, VAR_USHORT, WEAK_REFERENCE, WEB_PROC, WHEN_LIST, WHERE_CURRENT_OF, WID_BROWSE, WID_BROWSE_COL, WID_BUTTON, WID_COMBO, WID_DIALOG, WID_EDITOR, WID_FILL_IN, WID_FRAME, WID_IMAGE, WID_LITERAL, WID_MENU, WID_MENU_ITM, WID_RADIO, WID_RECT, WID_SEL_LST, WID_SLIDER, WID_SUB_MENU, WID_TEXT, WID_TOGGLE, WID_WINDOW, WIDGET_LIST, WIDGET_POOL, WITH_CHECK_OPTION, WITH_GRANT_OPTION, WORD_MATCH, WORK_TABLE, WS, XSTRING, YEAR_TRASH_MODE| Constructor and Description |
|---|
JavaClassDefinition(java.lang.Class<?> cls)
Construct an instance.
|
| Modifier and Type | Method and Description |
|---|---|
private void |
annotateCallSignature(Aast call,
ParameterKey[] callSig,
JavaClassDefinition.MethodMatch match)
Process a method call to mark any "fuzzy" parameters with the wrapper type that must
be used for the actual call.
|
void |
annotateMethodCall(java.lang.String mname,
ParameterKey[] signature,
int access,
boolean isStatic,
boolean isSuper,
boolean internal,
Aast node)
Annotate the given method invocation reference with details for the specified method
in this class.
|
private boolean |
checkAccessRights(int access,
int needed)
Confirm if the needed access level is allowed.
|
private boolean |
checkModifiers(java.lang.reflect.Member m,
int access,
boolean isStatic)
Check if the given member matches the access level and instance/static requirement.
|
private static java.lang.Class<?>[] |
createJavaParameters(ParameterKey[] sig)
Convert a 4GL parameter signature into a Java class parameter list.
|
private static OOType |
decodeOOType(java.lang.Class<?> cls)
Determine the type of the Java class.
|
private static int |
decodeReturnType(java.lang.Class<?> cls)
Map the given class to a valid 4GL token type for a method call.
|
static int |
decodeVarType(java.lang.Class<?> cls)
Map the given class to a valid 4GL token type for a variable.
|
void |
derivedFromDotNet()
Check the parent hierarchy to determine if the 4GL class has a .NET ancestor.
|
private JavaClassDefinition.MethodMatch |
exactMethodLookup(java.lang.String name,
ParameterKey[] sig,
int access,
boolean isStatic)
Find the named method based on an exact signature match.
|
private JavaClassDefinition.FuzzyMatch |
fuzzyMethodLookup(java.lang.String name,
ParameterKey[] sig,
int access,
boolean isStatic,
Aast node)
Find the named method based on a fuzzy signature match.
|
private java.lang.reflect.Field[] |
getCandidateFields(java.lang.String name,
int access,
boolean isStatic)
Return the array of field instances that match by name, access mode and static/instance.
|
private java.lang.reflect.Executable[] |
getCandidateMethods(java.lang.String name,
int parms,
int access,
boolean isStatic)
Return the array of method instances that match by name, number of parameters, access
mode and static/instance.
|
java.lang.String |
getConvertedMethodName(java.lang.String legacySig)
Get the Java method name for a legacy signature.
|
java.util.Set<java.lang.String> |
getDefinedMethods()
Get all defined methods in this class.
|
java.util.Set<java.lang.String> |
getDerivedDotNet()
Obtains the empty set of derived (parent hierarchy) .NET references.
|
java.util.Set<java.lang.String> |
getDirectDotNet()
Obtains the direct .NET references.
|
private static java.lang.Class<?>[][] |
getExactMatchCriteria(ParameterKey[] parms)
Obtain the array of Java classes that represent an exact match.
|
java.util.Set<java.lang.String> |
getIndirectDotNet()
Obtains the indirect .NET references, an empty set.
|
java.util.Set<java.lang.String> |
getInterfaces()
Obtains the list of interfaces implemented by this class.
|
java.lang.String |
getJavaPackage()
Get the Java package for this definition.
|
private static java.util.Set<java.lang.Class<?>>[] |
getNearMatchCriteria(java.lang.Class<?>[][] exact)
Obtain the array of sets of Java classes that represent near matches.
|
private static java.util.Set<java.lang.Class<?>> |
getNearMatches(java.lang.Class<?> cls)
Obtain the set of data types that are near matches.
|
ClassDefinition[] |
getParents()
Obtains the parent class definition for this class.
|
java.lang.String |
getSimpleJavaName()
Get the simple Java class name for this definition.
|
private java.lang.reflect.Method |
guessMethod(java.lang.String name,
int access,
boolean isStatic)
Find the named method without any knowledge of the signature.
|
int |
guessMethodType(java.lang.String name,
int access,
boolean isStatic,
boolean internal)
Find the named method without any knowledge of the signature.
|
boolean |
hasDirectDotNet()
Reports if the class has any direct .NET references, which cannot ever be
true. |
boolean |
hasIndirectDotNet()
Reports if the class has any indirect .NET referenceswhich cannot ever be
true. |
boolean |
isBuiltIn()
Access the flag that denotes if this is a built-in class definition.
|
boolean |
isDerivedFromDotNet()
Report if the parent hierarchy includes a .NET ancestor which cannot ever be
true. |
boolean |
isDotNet()
Access the flag that denotes if this is a .NET class definition.
|
boolean |
isIndirectDotNetReference()
Reports if the a reference to this class should be considered an indirect .NET reference
in the calling class, which cannot ever be
true. |
boolean |
isJava()
Access the flag that denotes if this is a Java class definition.
|
boolean |
isMock()
The method indicates whether this inctance represents a "mock" class definition
used to resolve symbols during class pre-scan mode in case the class file has not been
parsed.
|
boolean |
isProcessed()
Check if this class definition was already fully parsed.
|
boolean |
isStaticDataMember(java.lang.String name,
int access)
Reports if the given data member is a static member of the given class.
|
static boolean |
isStaticModifier(int mods)
Report if the given modifiers have the static bit set.
|
static int |
javaAccessLevel(int modifiers)
Check the given modifiers to see which of the Java private, protected or public access
level bits is set.
|
static int |
javaModToTokenType(int access)
Convert the Java Modifier access mode into the Progress token type for an access mode.
|
private static java.lang.String |
javaPrimitiveTypeCode(java.lang.String type)
Convert a primitive type name into its Java array type code.
|
private JavaClassDefinition.MethodMatch |
lookupMethodWorker(java.lang.String name,
ParameterKey[] sig,
int access,
boolean isStatic,
Aast node)
Obtain the method instance given the name, signature and access mode.
|
int |
lookupVariable(java.lang.String name,
int access,
boolean isStatic)
Obtain the token type of the data member (variable) or property given
the name and access mode.
|
java.lang.String |
lookupVariableClassName(java.lang.String name,
int access,
boolean isStatic)
Obtain the fully qualified class name of the object instance
represented by the data member (variable) or property given
the name and access mode.
|
Variable |
lookupVariableWrapper(java.lang.String name,
int access,
boolean isStatic)
Obtain the
Variable wrapper for the data member (variable) or property given
the name and access mode. |
void |
markDotNetUsage(ClassDefinition ref)
Calculate if the given reference is a direct or indirect .NET reference and update out
counters.
|
private boolean |
matchesParmNum(int parms,
java.lang.reflect.Executable e)
Check if the number of given parameters matches the number of parms in the
candidate member.
|
private void |
noMethodMatchError(java.lang.String name,
ParameterKey[] sig,
int access,
boolean isStatic,
Aast node)
Display a detailed error message to report a method that was not found.
|
private static java.lang.String |
nonArrayType(java.lang.String name)
Convert the Java type specification into a simple type name that does not include any
array prefix.
|
private static java.lang.Class<?> |
parameterTypeToJavaClass(java.lang.String type)
Convert a 4GL parameter type into a Java class, handling arrays as needed.
|
private JavaClassDefinition.FuzzyMatch |
testFuzzyMatch(java.lang.reflect.Executable m,
java.lang.Class<?>[][] exact,
java.util.Set<java.lang.Class<?>>[] near)
Determine if the given parameter match criteria can match the given method.
|
private static int |
tokenTypeToJavaMod(int access)
Convert the Progress token type for an access mode into the Java Modifier access mode.
|
static java.lang.Class<?> |
typeToJavaClass(java.lang.String type,
java.lang.String pkg,
boolean array)
Convert a type into a Java class.
|
private static java.lang.Class<?> |
unwrapObjectTypeToJavaClass(java.lang.String type)
Unwrap the 4GL object parameter type into a referenced Java class, handling arrays as
needed.
|
addDataSet, addDataSource, addMethod, addQuery, addTable, addVariable, annotateObjectEvent, calcFromParentGraph, candidates, cleanupObjectResources, getConvertedMethodName, getFilename, getName, getQualifiedJavaName, getSchemaDict, getSimpleName, getTableIds, hasParentPropertyAccessor, isClass, isEnum, isImplemented, isInheritedFrom, isInterface, isPolySignature, lookupDataSet, lookupDataSetWrapper, lookupDataSource, lookupDataSourceWrapper, lookupQuery, lookupTable, lookupVariableExtent, lookupVariableJavaName, nextTempIdx, parseFinished, processParentGraph, processParentGraph, registerPropertyMethod, setJavaClassName, setProcessed, testParentGraphprivate java.lang.Class cls
public JavaClassDefinition(java.lang.Class<?> cls)
cls - Java class instance to wrap. Must NOT be null.public static boolean isStaticModifier(int mods)
mods - Modifiers bitset to check.true if the static bit is set.public static int javaModToTokenType(int access)
access - Access mode (Modifier.PRIVATE, Modifier.PROTECTED,
Modifier.PUBLIC).KW_PUBLIC, KW_PROTECTD or KW_PRIVATE or -1 if there
is an error.public static int javaAccessLevel(int modifiers)
modifiers - Modifiers bitset to check.Modifier.PRIVATE, Modifier.PROTECTED, Modifier.PUBLIC
or 0 if there is an error.public java.lang.String getSimpleJavaName()
getSimpleJavaName in class ClassDefinitionpublic java.lang.String getJavaPackage()
getJavaPackage in class ClassDefinitionpublic java.lang.String getConvertedMethodName(java.lang.String legacySig)
getConvertedMethodName in class ClassDefinitionlegacySig - The legacy signature.null if no match is found.public boolean isProcessed()
isProcessed in class ClassDefinitionClassDefinition.processed flag.public void derivedFromDotNet()
derivedFromDotNet in class ClassDefinitionpublic boolean isDerivedFromDotNet()
true.isDerivedFromDotNet in class ClassDefinitionfalse.public java.util.Set<java.lang.String> getDerivedDotNet()
getDerivedDotNet in class ClassDefinitionpublic void markDotNetUsage(ClassDefinition ref)
markDotNetUsage in class ClassDefinitionref - The class being referenced.public boolean hasDirectDotNet()
true.hasDirectDotNet in class ClassDefinitionfalse.public java.util.Set<java.lang.String> getDirectDotNet()
getDirectDotNet in class ClassDefinitionpublic boolean hasIndirectDotNet()
true.hasIndirectDotNet in class ClassDefinitionfalse.public java.util.Set<java.lang.String> getIndirectDotNet()
getIndirectDotNet in class ClassDefinitionpublic boolean isIndirectDotNetReference()
true.isIndirectDotNetReference in class ClassDefinitionfalse.public ClassDefinition[] getParents()
getParents in class ClassDefinitionnull.public java.util.Set<java.lang.String> getInterfaces()
getInterfaces in class ClassDefinitionpublic boolean isBuiltIn()
isBuiltIn in class ClassDefinitionfalse.public boolean isDotNet()
isDotNet in class ClassDefinitionfalse.public boolean isJava()
isJava in class ClassDefinitiontrue.public boolean isMock()
isMock in class ClassDefinitionfalse.public int guessMethodType(java.lang.String name,
int access,
boolean isStatic,
boolean internal)
If a positive value is returned, the caller can be assured that there is an accessible method with that name BUT the actual type of the return value cannot be known until the signature is known. This is due to the fact that the same method name can be present with differing return values and only the parameter signature matching can differentiate the exact method that will be called.
Do not call this from any location where the type must be known authoritatively.
guessMethodType in class ClassDefinitionname - Resource name.access - Access mode (KW_PUBLIC, KW_PROTECTD or
KW_PRIVATE).isStatic - If true, only static methods will be looked up.
Otherwise any method can be returned.internal - Ignored.-1 if no match exists.public void annotateMethodCall(java.lang.String mname,
ParameterKey[] signature,
int access,
boolean isStatic,
boolean isSuper,
boolean internal,
Aast node)
null.annotateMethodCall in class ClassDefinitionmname - Method name, null for a c'tor invocation.signature - Array of type values for the parameter list, in left to right order.access - Access mode (KW_PUBLIC, KW_PROTECTD
or KW_PRIVATE).isStatic - true if the method is static.isSuper - true if the rvalue refnode is the SUPER keyword.internal - true if the lookup is internal to the current class definition.node - The AST to be annotated.public int lookupVariable(java.lang.String name,
int access,
boolean isStatic)
If the resource does not exist in this class definition the parent (if one exists) will be checked. This means a recursive call can occur here.
lookupVariable in class ClassDefinitionname - Variable or property name.access - Access mode (KW_PUBLIC, KW_PROTECTD
or KW_PRIVATE).isStatic - If true, only static methods will be looked up.
Otherwise any method can be returned.public java.lang.String lookupVariableClassName(java.lang.String name,
int access,
boolean isStatic)
If the resource does not exist in this class definition the parent (if one exists) will be checked. This means a recursive call can occur here.
lookupVariableClassName in class ClassDefinitionname - Variable or property name.access - Access mode (KW_PUBLIC, KW_PROTECTD
or KW_PRIVATE).isStatic - true if this is a static reference.null if no such variable exists.public Variable lookupVariableWrapper(java.lang.String name, int access, boolean isStatic)
Variable wrapper for the data member (variable) or property given
the name and access mode.
If the resource does not exist in this class definition the parent (if one exists) will be checked. This means a recursive call can occur here.
lookupVariableWrapper in class ClassDefinitionname - Variable or property name.access - Access mode (KW_PUBLIC, KW_PROTECTD
or KW_PRIVATE).isStatic - true if this is a static reference.null if no such variable exists.public boolean isStaticDataMember(java.lang.String name,
int access)
isStaticDataMember in class ClassDefinitionname - Member name to lookup.access - Access mode (KW_PUBLIC, KW_PROTECTD
or KW_PRIVATE).true if the member is static. false otherwise
including the case where the member does not exist at all.public java.util.Set<java.lang.String> getDefinedMethods()
getDefinedMethods in class ClassDefinitionnull.private void annotateCallSignature(Aast call, ParameterKey[] callSig, JavaClassDefinition.MethodMatch match)
call - The OO_METH_* node whose parameters will be annotated.callSig - The array of parameter types that is the method definition signature.match - The details of the match found.private java.lang.reflect.Method guessMethod(java.lang.String name,
int access,
boolean isStatic)
If a non-null value is returned, the caller can be assured that there is an accessible method with that name BUT the actual type/details of the method cannot be known until the signature is known. This is due to the fact that the same method name can be present with differing return values/parameter signature and only the parameter signature matching can differentiate the exact method that will be called.
Do not call this from any location where the method details must be known authoritatively.
name - Method name.access - Access mode (KW_PUBLIC, KW_PROTECTD or
KW_PRIVATE).isStatic - If true, only static methods will be looked up.
Otherwise any method can be returned.null if no match exists.private JavaClassDefinition.MethodMatch lookupMethodWorker(java.lang.String name, ParameterKey[] sig, int access, boolean isStatic, Aast node)
name - Method name, null for a c'tor invocation.sig - Array describing the signature of the method call.access - Access mode (KW_PUBLIC, KW_PROTECTD
or KW_PRIVATE).isStatic - If true, only static methods will be looked up.
Otherwise any method can be returned.node - The AST referencing this method.null if no such method exists.private JavaClassDefinition.MethodMatch exactMethodLookup(java.lang.String name, ParameterKey[] sig, int access, boolean isStatic)
name - Method name, null for a c'tor invocation.sig - Method call signature.access - Access mode (KW_PUBLIC, KW_PROTECTD or
KW_PRIVATE).isStatic - If true, only static methods will be looked up.
Otherwise any method can be returned.null if no match exists.private boolean checkModifiers(java.lang.reflect.Member m,
int access,
boolean isStatic)
m - Member to check.access - Access mode (KW_PUBLIC, KW_PROTECTD or
KW_PRIVATE).isStatic - If true, the method must be static.true if the method matches the access and instance/static requirements.private JavaClassDefinition.FuzzyMatch fuzzyMethodLookup(java.lang.String name, ParameterKey[] sig, int access, boolean isStatic, Aast node)
name - Method name, null for a c'tor invocation.sig - Method call signature.access - Access mode (KW_PUBLIC, KW_PROTECTD or
KW_PRIVATE).isStatic - If true, only static methods will be looked up.
Otherwise any method can be returned.node - The AST referencing this method.null if no match exists.private void noMethodMatchError(java.lang.String name,
ParameterKey[] sig,
int access,
boolean isStatic,
Aast node)
name - Method name, null for a c'tor invocation.sig - Method call signature.access - Access mode (KW_PUBLIC, KW_PROTECTD or
KW_PRIVATE).isStatic - If true, only static methods will be looked up.
Otherwise any method can be returned.node - The AST referencing this method.private JavaClassDefinition.FuzzyMatch testFuzzyMatch(java.lang.reflect.Executable m, java.lang.Class<?>[][] exact, java.util.Set<java.lang.Class<?>>[] near)
m - The method candidate to test.exact - The types of exact matches.near - The types of the near matches.null if a match does not exist.private java.lang.reflect.Executable[] getCandidateMethods(java.lang.String name,
int parms,
int access,
boolean isStatic)
name - Method name.parms - Number of parameters or -1 if the number of parameters is not known.access - Access mode (KW_PUBLIC, KW_PROTECTD or
KW_PRIVATE).isStatic - If true, only static methods will be looked up.
Otherwise any method can be returned.private boolean matchesParmNum(int parms,
java.lang.reflect.Executable e)
parms - Number of parameters or -1 if the number of parameters is not known.e - The method or c'tor to check.true if the number of parameters matches or if it is not known.private java.lang.reflect.Field[] getCandidateFields(java.lang.String name,
int access,
boolean isStatic)
name - Field name.access - Access mode (KW_PUBLIC, KW_PROTECTD or
KW_PRIVATE).isStatic - If true, only static methods will be looked up.
Otherwise any method can be returned.private static java.lang.Class<?>[] createJavaParameters(ParameterKey[] sig)
sig - List of 4GL parameters.private static java.lang.Class<?> parameterTypeToJavaClass(java.lang.String type)
type - 4GL parameter.private static java.lang.Class<?> unwrapObjectTypeToJavaClass(java.lang.String type)
type - 4GL parameter.null if this is not an object reference.public static java.lang.Class<?> typeToJavaClass(java.lang.String type,
java.lang.String pkg,
boolean array)
type - Type name, possibly with a package.pkg - Optional package prefix to prepend.array - true if this is an array type.private static java.lang.String javaPrimitiveTypeCode(java.lang.String type)
type - Java primitive type name.private boolean checkAccessRights(int access,
int needed)
access - Access level of the resource, as a Java modifiers bitfield.needed - Required access level as a Progress token type (KW_PUBLIC,
KW_PROTECTD or KW_PRIVATE).true if the given resource is accessable.private static int tokenTypeToJavaMod(int access)
access - Access mode (KW_PUBLIC, KW_PROTECTD or KW_PRIVATE).Modifier.PRIVATE, Modifier.PROTECTED, Modifier.PUBLIC
or 0 if there is an error.private static OOType decodeOOType(java.lang.Class<?> cls)
cls - The class to inspect.private static java.lang.Class<?>[][] getExactMatchCriteria(ParameterKey[] parms)
parms - The parameter list as passed by the 4GL code.private static java.util.Set<java.lang.Class<?>>[] getNearMatchCriteria(java.lang.Class<?>[][] exact)
exact - The two dimensional array of exact matches.private static java.util.Set<java.lang.Class<?>> getNearMatches(java.lang.Class<?> cls)
cls - The class for which to find the near matches.public static int decodeVarType(java.lang.Class<?> cls)
BEGIN_VAR_TYPE and END_VAR_TYPE.cls - The class to inspect.private static int decodeReturnType(java.lang.Class<?> cls)
BEGIN_OO_METH and END_OO_METH.cls - The class to inspect.private static java.lang.String nonArrayType(java.lang.String name)
name - The name to decode.