SAP ABAP Class CL_ESH_QP_LEXER (SearchTerms Lexer)
Hierarchy
SAP_BASIS (Software Component) SAP Basis Component
   BC-EIM-ESH (Application Component) NetWeaver Enterprise Search
     S_ESH_ENG_QUERY_PARSER_RD (Package) Recursive descent query parser
Properties
Class CL_ESH_QP_LEXER  
Short Description SearchTerms Lexer    
Super Class    
Instantiability of a Class 2  Public 
Final    
General Data
Message Class    
Program status     
Category 0   
Package S_ESH_ENG_QUERY_PARSER_RD   Recursive descent query parser 
Created 20080709   SAP 
Last change 20110908   SAP 
Shared Memory-enabled    
Fixed point arithmetic    
Unicode checks active    
Forward declarations
# Type group / Object type Type Type Description
1 ABAP Type group use (TYPE-POOLS tp)  Type group use (TYPE-POOLS tp)
Interfaces
Class CL_ESH_QP_LEXER has no interface implemented.
Friends
Class CL_ESH_QP_LEXER has no friend class.
Attributes
# Attribute Level Visibility Read only Typing Associated Type Initial Value Description Created on
1 GC_ALLFUZZY_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'allfuzzy:' 20090112
2 GC_ALLFUZZY_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57365 20090112
3 GC_ALLSTEM_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'allstem:' 20090112
4 GC_ALLSTEM_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57366 20090112
5 GC_AND_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'AND' 20090112
6 GC_AND_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57362 20090112
7 GC_BT_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'bt:' 20090112
8 GC_BT_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57353 20090112
9 GC_CATEGORY_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'category:' 20090112
10 GC_CATEGORY_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57357 20090112
11 GC_COLON_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 58 : 20080807
12 GC_COMMA_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 44 , 20080807
13 GC_CONNECTOR_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'connector:' 20090112
14 GC_CONNECTOR_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57358 20090112
15 GC_CP_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'cp:' 20090112
16 GC_CP_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57355 20090112
17 GC_EOT_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 3 end of text 20080811
18 GC_EQUALS_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 61 = 20080923
19 GC_ESC_LP_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME '(' SearchTerms Lexeme 20090928
20 GC_ESC_LP_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57374 20090928
21 GC_ESC_QUOTATION_MARK_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME '""' escaped quotation mark 20090402
22 GC_ESC_QUOTATION_MARK_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57373 20090402
23 GC_ESC_RP_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME ')' SearchTerms Lexeme 20090928
24 GC_ESC_RP_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57375 SearchTerms Token Type 20090928
25 GC_FUZZY_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'fuzzy:' 20090112
26 GC_FUZZY_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57367 20090112
27 GC_GE_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME '>=' 20090112
28 GC_GE_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57350 20090112
29 GC_GT_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 62 > 20080807
30 GC_IN_ATTRIBUTE_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57370 in:: 20081113
31 GC_IN_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'in:' 20090112
32 GC_IN_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57369 20090112
33 GC_KEYWORD_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'keyword:' 20090112
34 GC_KEYWORD_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57372 20090112
35 GC_LE_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME '<=' 20090112
36 GC_LE_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57349 20090112
37 GC_LP_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 40 ( 20080807
38 GC_LT_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 60 < 20080807
39 GC_NB_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'nb:' 20090112
40 GC_NB_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57354 20090112
41 GC_NE_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME '<>' 20090112
42 GC_NE_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57351 20090112
43 GC_NOT_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'NOT' 20090112
44 GC_NOT_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57364 20090112
45 GC_NP_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'np:' 20090112
46 GC_NP_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57356 20090112
47 GC_NUMBER_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57345 number 20080807
48 GC_OPERATOR_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57348 followed by ':' 20090115
49 GC_OR_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'OR' 20090112
50 GC_OR_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57363 20090112
51 GC_OTHER_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57373 One-character token 20090114
52 GC_QUOTATION_MARK_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 34 " 20080919
53 GC_RP_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 41 ) 20080807
54 GC_SORT_ASCENDING_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'sort-ascending:' 20090112
55 GC_SORT_ASCENDING_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57360 20090112
56 GC_SORT_DESCENDING_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'sort-descending:' 20090112
57 GC_SORT_DESCENDING_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57361 20090112
58 GC_STEM_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'stem:' 20090112
59 GC_STEM_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57368 20090112
60 GC_TEMPLATE_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'template:' 20090112
61 GC_TEMPLATE_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57359 20090112
62 GC_TIMEOUT_LEXEME Static Attribute Public Type reference (TYPE) ESH_E_QP_LEXEME 'timeout:' 20090112
63 GC_TIMEOUT_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57371 20090112
64 GC_WORD_TYPE Static Attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE 57346 word 20080808
65 LT_RESERVED_WORDS Static Attribute Private Type reference (TYPE) ESH_T_QP_WORD SearchTerms reserved words 20080807
66 LT_RESERVED_WORDS_CS Static Attribute Private Type reference (TYPE) ESH_T_QP_WORD SearchTerms case-sensitive reserved words 20080807
67 MV_CHARS_DIGIT Static Attribute Private Type reference (TYPE) STRING TODO type 20080805
68 MV_CHARS_IDENTIFIER Static Attribute Private Type reference (TYPE) STRING TODO type 20080911
69 MV_CHARS_NOT_WORD Static Attribute Private Type reference (TYPE) STRING Characters that do not participate in a word 20080918
70 MV_CHARS_SPACE Static Attribute Private Type reference (TYPE) STRING TODO type 20080805
71 MV_LEN Instance attribute Private Type reference (TYPE) I 20080812
72 MV_PEEK Instance attribute Private Type reference (TYPE) C TODO type 20080805
73 MV_POS Instance attribute Private Type reference (TYPE) I 20080812
74 MV_PREV_TTYPE Instance attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE SearchTerms token type 20081219
75 MV_PREV_TVALUE Instance attribute Public Type reference (TYPE) ESH_E_QP_LEXEME SearchTerms token lexeme 20081219
76 MV_REGEX_DIGIT Static Attribute Private Object reference (TYPE REF TO) CL_ABAP_REGEX Digits 20080805
77 MV_REGEX_IDENTIFIER Static Attribute Private Object reference (TYPE REF TO) CL_ABAP_REGEX Identifiers 20080808
78 MV_REGEX_NOT_WORD Static Attribute Private Object reference (TYPE REF TO) CL_ABAP_REGEX Alphanumeric characters 20080807
79 MV_REGEX_NUMBER Static Attribute Private Object reference (TYPE REF TO) CL_ABAP_REGEX Regular expressions 20080916
80 MV_REGEX_SPACE Static Attribute Private Object reference (TYPE REF TO) CL_ABAP_REGEX Spaces 20080805
81 MV_TEXT Instance attribute Private Type reference (TYPE) STRING Text to be lexed 20080709
82 MV_TOKEN_COUNT Instance attribute Private Type reference (TYPE) I 20090119
83 MV_TSPACE Instance attribute Public Type reference (TYPE) ABAP_BOOL 20090402
84 MV_TTYPE Instance attribute Public Type reference (TYPE) ESH_E_QP_TOKEN_TYPE SearchTerms token type 20080709
85 MV_TVALUE Instance attribute Public Type reference (TYPE) ESH_E_QP_LEXEME SearchTerms token lexeme 20080709
Methods
# Method Level Visibility Method type Description Created on
1 CONSTRUCTOR Instance method Public Constructor Constructor 20080709
2 GET_RESERVED_CS_TYPE Static method Public Method Check if input lexeme is a case-sensitive reserved word 20081113
3 GET_RESERVED_TYPE Static method Public Method Check if input lexeme is a reserved word 20081113
4 GET_TOKEN_COUNT Instance method Public Method Get current token count 20090119
5 GET_TOKEN_LEXEME Static method Public Method Return the lexeme of a predefined token type 20080812
6 GET_WORDS Instance method Public Method Return all tokens in input text 20090114
7 IS_DIGIT Instance method Private Method Test if character is a digit 20080805
8 IS_IDENTIFIER Instance method Private Method Test if character is a space 20080916
9 IS_NUMBER_STR Instance method Public Method Test if string is number 20090217
10 IS_SPACE Instance method Private Method Test if character is a space 20080805
11 IS_WORD Instance method Private Method Test if character may belong to a word 20080805
12 NEXTCH Instance method Private Method Look ahead character in input text 20090928
13 NEXT_TOKEN Instance method Public Method Scan input text and return next token 20080807
14 READCH Instance method Private Method Read character in input text 20080805
15 READCH_CONDITIONAL Instance method Private Method Read character in input text 20080916
16 READCH_ID Instance method Private Method Read character in input text 20081113
17 READCH_SET Instance method Private Method Read character in input text 20080911
18 READCH_WORD Instance method Private Method Read character in input text 20081112
19 READ_ATTRIBUTE Instance method Private Method 20081113
20 READ_NUMBER Instance method Private Method 20080915
21 SET_TEXT Instance method Public Method Set input text to be tokenized 20080709
Events
Class CL_ESH_QP_LEXER has no event.
Types
Class CL_ESH_QP_LEXER has no local type.
Method Signatures

Method CONSTRUCTOR Signature

Method CONSTRUCTOR on class CL_ESH_QP_LEXER has no parameter.
# Exception Resumable Description Created on
1 CX_ESH_QP_LEXER Lexer Exception 20080811

Method GET_RESERVED_CS_TYPE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_LEXEME Call by reference Type reference (TYPE) ESH_E_QP_LEXEME SearchTerms Token Lexeme 20081113
2 Returning RV_TOKEN_TYPE Value transfer Type reference (TYPE) ESH_E_QP_TOKEN_TYPE SearchTerms Token Type 20081113

Method GET_RESERVED_CS_TYPE on class CL_ESH_QP_LEXER has no exception.

Method GET_RESERVED_TYPE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_LEXEME Call by reference Type reference (TYPE) ESH_E_QP_LEXEME SearchTerms Token Lexeme 20081113
2 Returning RV_TOKEN_TYPE Value transfer Type reference (TYPE) ESH_E_QP_TOKEN_TYPE SearchTerms Token Type 20081113

Method GET_RESERVED_TYPE on class CL_ESH_QP_LEXER has no exception.

Method GET_TOKEN_COUNT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning RV_TOKEN_COUNT Value transfer Type reference (TYPE) I Current Token Count 20090119

Method GET_TOKEN_COUNT on class CL_ESH_QP_LEXER has no exception.

Method GET_TOKEN_LEXEME Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_TOKEN_TYPE Call by reference Type reference (TYPE) ESH_E_QP_TOKEN_TYPE SearchTerms Token Type 20080812
2 Returning RV_TOKEN_LEXEME Value transfer Type reference (TYPE) ESH_E_QP_LEXEME SearchTerms Token Lexeme, i.e., 'AND' 20080812
# Exception Resumable Description Created on
1 CX_ESH_QP_LEXER Lexer Exception 20080911

Method GET_WORDS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting EV_COUNT Call by reference Type reference (TYPE) I Word Count 20090114
2 Exporting EV_WORDS Call by reference Type reference (TYPE) ESH_T_QP_WORD_UNSORTED Words 20090114
3 Importing IV_TEXT Call by reference Type reference (TYPE) STRING Text to be tokenized 20090114
# Exception Resumable Description Created on
1 CX_ESH_QP_LEXER Lexer Exception 20090114

Method IS_DIGIT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning EV_SUCCESS Value transfer Type reference (TYPE) ABAP_BOOL 20080805
2 Importing IV_CHAR Call by reference Type reference (TYPE) CLIKE 20080811

Method IS_DIGIT on class CL_ESH_QP_LEXER has no exception.

Method IS_IDENTIFIER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_CHAR Call by reference Type reference (TYPE) CLIKE 20080916
2 Returning RV_SUCCESS Value transfer Type reference (TYPE) ABAP_BOOL 20081113

Method IS_IDENTIFIER on class CL_ESH_QP_LEXER has no exception.

Method IS_NUMBER_STR Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_STRING Call by reference Type reference (TYPE) STRING 20090217
2 Returning RV_SUCCESS Value transfer Type reference (TYPE) ABAP_BOOL 20090217

Method IS_NUMBER_STR on class CL_ESH_QP_LEXER has no exception.

Method IS_SPACE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning EV_SUCCESS Value transfer Type reference (TYPE) ABAP_BOOL 20080805
2 Importing IV_CHAR Call by reference Type reference (TYPE) CLIKE 20080811

Method IS_SPACE on class CL_ESH_QP_LEXER has no exception.

Method IS_WORD Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning EV_SUCCESS Value transfer Type reference (TYPE) ABAP_BOOL 20080805
2 Importing IV_CHAR Call by reference Type reference (TYPE) CLIKE 20080811

Method IS_WORD on class CL_ESH_QP_LEXER has no exception.

Method NEXTCH Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting EV_CHAR Value transfer Type reference (TYPE) CHAR1 Single-Character Flag 20090928
2 Exporting EV_SUCCESS Call by reference Type reference (TYPE) ABAP_BOOL 20090928

Method NEXTCH on class CL_ESH_QP_LEXER has no exception.

Method NEXT_TOKEN Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning EV_TOKEN_TYPE Value transfer Type reference (TYPE) ESH_E_QP_TOKEN_TYPE SearchTerms Token Type 20080807
# Exception Resumable Description Created on
1 CX_ESH_QP_LEXER Lexer Exception 20080812

Method READCH Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning RV_SUCCESS Value transfer Type reference (TYPE) ABAP_BOOL 20080807

Method READCH on class CL_ESH_QP_LEXER has no exception.

Method READCH_CONDITIONAL Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_CHAR Call by reference Type reference (TYPE) CHAR1 TODO type 20080916
2 Returning RV_SUCCESS Value transfer Type reference (TYPE) ABAP_BOOL 20080916

Method READCH_CONDITIONAL on class CL_ESH_QP_LEXER has no exception.

Method READCH_ID Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning RV_SUCCESS Value transfer Type reference (TYPE) ABAP_BOOL 20081113

Method READCH_ID on class CL_ESH_QP_LEXER has no exception.

Method READCH_SET Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_CHARSET Call by reference Type reference (TYPE) STRING TODO type 20080911
2 Importing IV_CS_CONDITION Call by reference Type reference (TYPE) ABAP_BOOL 20080918
3 Returning RV_SUCCESS Value transfer Type reference (TYPE) ABAP_BOOL 20080911

Method READCH_SET on class CL_ESH_QP_LEXER has no exception.

Method READCH_WORD Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning RV_SUCCESS Value transfer Type reference (TYPE) ABAP_BOOL 20081112

Method READCH_WORD on class CL_ESH_QP_LEXER has no exception.

Method READ_ATTRIBUTE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning RV_SUCCESS Value transfer Type reference (TYPE) ABAP_BOOL 20081113

Method READ_ATTRIBUTE on class CL_ESH_QP_LEXER has no exception.

Method READ_NUMBER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_POS Call by reference Type reference (TYPE) I 20080915
2 Returning RV_SUCCESS Value transfer Type reference (TYPE) ABAP_BOOL 20080916

Method READ_NUMBER on class CL_ESH_QP_LEXER has no exception.

Method SET_TEXT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_TEXT Call by reference Type reference (TYPE) CLIKE 20080709

Method SET_TEXT on class CL_ESH_QP_LEXER has no exception.
History
Last changed by/on SAP  20110908 
SAP Release Created in 712