SAP ABAP Class /IWCOR/CL_DS_EXPR_PARSER (Parse $filter and $orderby)
Hierarchy
SAP_GWFND (Software Component) SAP Gateway Foundation
   OPU-FND-CCL (Application Component) IWF Consumer Connectivity Layer
     /IWCOR/SODATA_URI (Package) URI and Expression Parser
Properties
Class /IWCOR/CL_DS_EXPR_PARSER  
Short Description Parse $filter and $orderby    
Super Class    
Instantiability of a Class 2  Public 
Final    
General Data
Message Class    
Program status     
Category 0   
Package /IWCOR/SODATA_URI   URI and Expression Parser 
Created 20110608   SAP 
Last change 20131127   SAP 
Shared Memory-enabled    
Fixed point arithmetic    
Unicode checks active    
Forward declarations
# Type group / Object type Type Type Description
1 /IWCOR/CL_DS_EXPR_PARSER Forward declaration class (CLASS c DEFINITION DEFERRED)  Forward declaration class (CLASS c DEFINITION DEFERRED)
2 ABAP Type group use (TYPE-POOLS tp)  Type group use (TYPE-POOLS tp)
Interfaces
Class /IWCOR/CL_DS_EXPR_PARSER has no interface implemented.
Friends
Class /IWCOR/CL_DS_EXPR_PARSER has no friend class.
Attributes
# Attribute Level Visibility Read only Typing Associated Type Initial Value Description Created on
1 GC_STR_CLOSEPAREN Constant Protected Type reference (TYPE) STRING ')' 20110808
2 GC_STR_COMMA Constant Protected Type reference (TYPE) STRING ',' 20110808
3 GC_STR_OPENPAREN Constant Protected Type reference (TYPE) STRING '(' 20110808
4 GC_STR_SINGLE_QUOTE Constant Protected Type reference (TYPE) STRING '''' 20110808
5 GC_STR_SLASH Constant Protected Type reference (TYPE) STRING '/' 20110808
6 GC_TOKEN_KIND_CLOSEPAREN Constant Protected Type reference (TYPE) TOKEN_KIND 4 20110808
7 GC_TOKEN_KIND_LITERAL Constant Protected Type reference (TYPE) TOKEN_KIND 6 20110808
8 GC_TOKEN_KIND_OPENPAREN Constant Protected Type reference (TYPE) TOKEN_KIND 3 20110808
9 GC_TOKEN_KIND_SYMBOL Constant Protected Type reference (TYPE) TOKEN_KIND 5 20110808
10 GC_TOKEN_KIND_TYPED_LITERAL Constant Protected Type reference (TYPE) TOKEN_KIND 7 20110808
11 GC_TOKEN_KIND_WHITESPACE Constant Protected Type reference (TYPE) TOKEN_KIND 1 20110808
12 MO_EDM Instance attribute Protected Object reference (TYPE REF TO) /IWCOR/IF_DS_EDM 20110808
13 MO_EXPR_NODE Instance attribute Protected Object reference (TYPE REF TO) /IWCOR/IF_DS_EXPR_NODE 20110808
14 MO_RESOURCE_TYPE Instance attribute Protected Object reference (TYPE REF TO) /IWCOR/IF_DS_EDM_TYPE 20110808
15 MT_AVAIL_BIN_OPS Static Attribute Protected Type reference (TYPE) AVAILABLE_BINARY_OPERATOR_T 20110808
16 MT_AVAIL_FUNC Static Attribute Protected Type reference (TYPE) AVAILABLE_FUNCTION_T 20110808
17 MT_AVAIL_UNARY_OPS Static Attribute Protected Type reference (TYPE) AVAILABLE_UNARY_OPERATOR_T 20110808
18 MT_FUOPS Static Attribute Protected Type reference (TYPE) FUOP_TYPES_T 20110808
19 MT_TOKENS Instance attribute Protected Type reference (TYPE) TOKEN_T 20110808
20 MV_CURTOKEN Instance attribute Protected Type reference (TYPE) I 20110808
21 MV_PARAMETER_PROMOTION Instance attribute Protected Type reference (TYPE) ABAP_BOOL 20110808
Methods
# Method Level Visibility Method type Description Created on
1 ATTACH_ERROR_INFORMATION Static method Protected Method 20120831
2 CLASS_CONSTRUCTOR Static method Public Constructor CLASS_CONSTRUCTOR 20110808
3 CONSTRUCTOR Instance method Public Constructor 20110808
4 EXPECT_TOKEN Instance method Protected Method Read a token from the tokenlist and check if its correct 20110808
5 GET_FUNCTION Instance method Protected Method Get information on a function (e.g. parametercount) 20110808
6 GET_PROPERTY Static method Protected Method Read the property from the Edm Model 20110808
7 GET_TOKEN Instance method Protected Method Read a token from the tokenlist 20110808
8 GET_TYPENAME Static method Protected Method Get typename from typeinstance 20110808
9 INIT_AVAIL_TABLES Static method Protected Method Initialise tables with supported operators and functions 20110808
10 IS_UNARY_OPERATOR Instance method Protected Method Chick if the given token is a unary operator 20110808
11 LOOK_BINAER_OPERATOR Instance method Protected Method Read a bin-op-token, but don't remove it from the tokenlist 20110808
12 LOOK_TOKEN Instance method Protected Method Read a token, but don't remove it from the tokenlist 20110808
13 PARSE_EXPRESSION Instance method Public Method Parse expression string 20110808
14 PARSE_ORDERBY Instance method Public Method Parse orderby string 20110808
15 READ_ELEMENT Instance method Protected Method Read element (parenthesis, function, unary op or terminal) 20110808
16 READ_ELEMENTS Instance method Protected Method Read elements (e.g. until an bin-op with a lower prio found) 20110808
17 READ_ELEMENT_FOR_MEMBER Instance method Protected Method Read element, but check if the element can be used as member 20110808
18 READ_PARAMETERS Instance method Protected Method Read the parameters of a function (comma separated) 20110808
19 READ_PARENTHESIS Instance method Protected Method Read the content of a parenthesis 20110808
20 TOKENIZE Static method Protected Method Tokenize expression 20110808
21 VALIDATE_BINARY_TYPES Instance method Protected Method Check the types of binary operators 20110808
22 VALIDATE_FUNCTION_TYPES Instance method Protected Method Check the types of function parameters 20110808
23 VALIDATE_PARAMETER_TYPES Instance method Protected Method Validates a given list of types against a second list 20110808
24 VALIDATE_UNARY_TYPES Instance method Protected Method Check the types of unary operators 20110808
Events
Class /IWCOR/CL_DS_EXPR_PARSER has no event.
Types
# Type Visibility Typing Associated Type Description Created on Type Source
1 ACTUAL_PARAMETERS_T Protected See coding 20110808 actual_parameters_t TYPE STANDARD TABLE OF REF TO /iwcor/if_ds_edm_type WITH DEFAULT KEY
2 AVAILABLE_BINARY_OPERATOR_S Protected See coding 20110808 BEGIN OF available_binary_operator_s, name TYPE string, prio TYPE string, category TYPE string, common_expression TYPE string, "parameter_types TYPE param_types_t, END OF available_binary_operator_s
3 AVAILABLE_BINARY_OPERATOR_T Protected See coding 20110808 available_binary_operator_t TYPE HASHED TABLE OF available_binary_operator_s WITH UNIQUE KEY name
4 AVAILABLE_FUNCTION_S Protected See coding 20110808 BEGIN OF available_function_s, name TYPE string, min_p TYPE i, max_p TYPE i, "parameter_types TYPE param_types_t, END OF available_function_s
5 AVAILABLE_FUNCTION_T Protected See coding 20110808 available_function_t TYPE STANDARD TABLE OF available_function_s
6 AVAILABLE_UNARY_OPERATOR_S Protected See coding 20110808 BEGIN OF available_unary_operator_s, name TYPE string, category TYPE string, END OF available_unary_operator_s
7 AVAILABLE_UNARY_OPERATOR_T Protected See coding 20110808 available_unary_operator_t TYPE STANDARD TABLE OF available_unary_operator_s
8 FUOP_TYPES_S Protected See coding 20110808 BEGIN OF fuop_types_s, name TYPE string, combination TYPE param_types_t, END OF fuop_types_s
9 FUOP_TYPES_T Protected See coding 20110808 fuop_types_t TYPE STANDARD TABLE OF fuop_types_s WITH DEFAULT KEY
10 OPERATOR_S Protected See coding 20110808 BEGIN OF operator_s, token TYPE token_s, prio TYPE i , END OF operator_s
11 PARAM_TYPES_S Protected See coding 20110808 BEGIN OF param_types_s, return_type TYPE string, params TYPE string_table, param1_type TYPE string, param2_type TYPE string, param3_type TYPE string, END OF param_types_s
12 PARAM_TYPES_T Protected See coding 20110808 param_types_t TYPE STANDARD TABLE OF param_types_s WITH DEFAULT KEY
13 TOKEN_KIND Protected See coding 20110808 token_kind TYPE c LENGTH 1
14 TOKEN_S Protected See coding 20110808 BEGIN OF token_s, kind TYPE token_kind, position TYPE i, type_object TYPE REF TO /iwcor/if_ds_edm_simple_type, value TYPE string, value_lower TYPE string, END OF token_s
15 TOKEN_T Protected See coding 20110808 token_t TYPE STANDARD TABLE OF token_s WITH DEFAULT KEY
Method Signatures

Method ATTACH_ERROR_INFORMATION Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IO_EXCEPTION Call by reference Object reference (TYPE REF TO) CX_ROOT 20120831
2 Importing IO_NODE Call by reference Object reference (TYPE REF TO) /IWCOR/IF_DS_EXPR_NODE 20120831
3 Importing IV_POSITION Call by reference Type reference (TYPE) I 20120831
4 Importing IV_TEXT Call by reference Type reference (TYPE) STRING 20120831

Method ATTACH_ERROR_INFORMATION on class /IWCOR/CL_DS_EXPR_PARSER has no exception.

Method CLASS_CONSTRUCTOR Signature

Method CLASS_CONSTRUCTOR on class /IWCOR/CL_DS_EXPR_PARSER has no parameter.
Method CLASS_CONSTRUCTOR on class /IWCOR/CL_DS_EXPR_PARSER has no exception.

Method CONSTRUCTOR Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IO_EDM Call by reference Object reference (TYPE REF TO) /IWCOR/IF_DS_EDM 20110808
2 Importing IO_RESOURCE_TYPE Call by reference Object reference (TYPE REF TO) /IWCOR/IF_DS_EDM_TYPE 20110808
3 Importing IV_PARAMETER_PROMOTION Call by reference Type reference (TYPE) ABAP_BOOL ABAP_FALSE 20110902

Method CONSTRUCTOR on class /IWCOR/CL_DS_EXPR_PARSER has no exception.

Method EXPECT_TOKEN Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_EXPECTED Call by reference Type reference (TYPE) STRING Expected token 20110808
2 Returning RS_TOKEN Value transfer Type reference (TYPE) /IWCOR/CL_DS_EXPR_PARSER=>TOKEN_S Read token 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110808
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110808

Method GET_FUNCTION Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IS_TOKEN Call by reference Type reference (TYPE) TOKEN_S Token of with the functionname 20110808
2 Returning RS_FUNCTION Value transfer Type reference (TYPE) AVAILABLE_FUNCTION_S Functioninformation 20110808

Method GET_FUNCTION on class /IWCOR/CL_DS_EXPR_PARSER has no exception.

Method GET_PROPERTY Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IO_RESOURCE_TYPE Call by reference Object reference (TYPE REF TO) /IWCOR/IF_DS_EDM_TYPE Type which must have properties 20110808
2 Importing IS_PROPERTY_TOKEN Call by reference Type reference (TYPE) TOKEN_S Token containing the property name 20110808
3 Returning RO_PROPERTY Value transfer Object reference (TYPE REF TO) /IWCOR/IF_DS_EDM_TYPED Reference to EDM property 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110808
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110808

Method GET_TOKEN Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning RS_TOKEN Value transfer Type reference (TYPE) TOKEN_S Read token 20110808

Method GET_TOKEN on class /IWCOR/CL_DS_EXPR_PARSER has no exception.

Method GET_TYPENAME Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IO_TYPE Call by reference Object reference (TYPE REF TO) /IWCOR/IF_DS_EDM_TYPE 20110808
2 Returning RV_TYPENAME Value transfer Type reference (TYPE) STRING 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110808
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110808

Method INIT_AVAIL_TABLES Signature

Method INIT_AVAIL_TABLES on class /IWCOR/CL_DS_EXPR_PARSER has no parameter.
Method INIT_AVAIL_TABLES on class /IWCOR/CL_DS_EXPR_PARSER has no exception.

Method IS_UNARY_OPERATOR Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IS_TOKEN Call by reference Type reference (TYPE) TOKEN_S Token of with the unary operator 20110808
2 Returning RV_IS_UNARY_OPERATOR Value transfer Type reference (TYPE) ABAP_BOOL True/False 20110808

Method IS_UNARY_OPERATOR on class /IWCOR/CL_DS_EXPR_PARSER has no exception.

Method LOOK_BINAER_OPERATOR Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning RS_OPERATOR Value transfer Type reference (TYPE) OPERATOR_S Binary operator ( if token is an binary operator) 20110808

Method LOOK_BINAER_OPERATOR on class /IWCOR/CL_DS_EXPR_PARSER has no exception.

Method LOOK_TOKEN Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning RS_TOKEN Value transfer Type reference (TYPE) TOKEN_S Next token 20110808

Method LOOK_TOKEN on class /IWCOR/CL_DS_EXPR_PARSER has no exception.

Method PARSE_EXPRESSION Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_EXPRESSION Call by reference Type reference (TYPE) STRING Expression 20110808
2 Returning RO_EXPR_NODE Value transfer Object reference (TYPE REF TO) /IWCOR/IF_DS_EXPR_NODE Expression node tree 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110808
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110808

Method PARSE_ORDERBY Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_ORDERBY Call by reference Type reference (TYPE) STRING Orderby string 20110808
2 Returning RO_ORDERBY Value transfer Object reference (TYPE REF TO) /IWCOR/CL_DS_EXPR_ORDERBY Class with multible orders which build the orderby clause 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110808
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110808

Method READ_ELEMENT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning RO_NODE Value transfer Object reference (TYPE REF TO) /IWCOR/IF_DS_EXPR_NODE Node expression 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110808
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110808

Method READ_ELEMENTS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IO_LEFT_NODE Call by reference Object reference (TYPE REF TO) /IWCOR/IF_DS_EXPR_NODE Left expression node 20110808
2 Importing IV_PRIO Call by reference Type reference (TYPE) I Priority of binary operator 20110808
3 Returning RO_NODE Value transfer Object reference (TYPE REF TO) /IWCOR/IF_DS_EXPR_NODE Expression node 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110808
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110808

Method READ_ELEMENT_FOR_MEMBER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IO_PARENT_PROPERTY Call by reference Object reference (TYPE REF TO) /IWCOR/IF_DS_EXPR_PROPERTY 20110808
2 Returning RO_NODE Value transfer Object reference (TYPE REF TO) /IWCOR/IF_DS_EXPR_NODE Node expression 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110808
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110808

Method READ_PARAMETERS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing CO_NODE Call by reference Object reference (TYPE REF TO) /IWCOR/CL_DS_EXPR_FUNCTION Function expression node 20110808
2 Importing IS_FUNC Call by reference Type reference (TYPE) AVAILABLE_FUNCTION_S Functionname 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110808
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110808

Method READ_PARENTHESIS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning RO_NODE Value transfer Object reference (TYPE REF TO) /IWCOR/IF_DS_EXPR_NODE Parenthesis node 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110808
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110808

Method TOKENIZE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing CT_TOKEN Call by reference Type reference (TYPE) /IWCOR/CL_DS_EXPR_PARSER=>TOKEN_T List with tokens 20120914
2 Importing IV_EXPRESSION Call by reference Type reference (TYPE) STRING Expression 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110808
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110808

Method VALIDATE_BINARY_TYPES Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting ES_FORMAL_PARAM_COMBI Call by reference Type reference (TYPE) FUOP_TYPES_S Used formal parameter set 20110808
2 Exporting ET_ACTUAL_PARAMETERS Call by reference Type reference (TYPE) ACTUAL_PARAMETERS_T List with actual parameter set 20110808
3 Importing IO_EXPR_BINARY Call by reference Object reference (TYPE REF TO) /IWCOR/IF_DS_EXPR_BINARY Binary operator node 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110811
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110811

Method VALIDATE_FUNCTION_TYPES Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting ES_FORMAL_PARAM_COMBI Call by reference Type reference (TYPE) FUOP_TYPES_S Used formal parameter set 20110808
2 Exporting ET_ACTUAL_PARAMETERS Call by reference Type reference (TYPE) ACTUAL_PARAMETERS_T List with actual parameter set 20110808
3 Importing IO_EXPR_FUNCTION Call by reference Object reference (TYPE REF TO) /IWCOR/IF_DS_EXPR_FUNCTION Function node 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110811
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110811

Method VALIDATE_PARAMETER_TYPES Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting ES_USED_COMBI Call by reference Type reference (TYPE) PARAM_TYPES_S Used formal parameter set 20110808
2 Exporting EV_DYNAMIC Call by reference Type reference (TYPE) ABAP_BOOL Use dynamic type check (a actual parameter type was initial) 20110811
3 Exporting EV_PROMOTED Call by reference Type reference (TYPE) ABAP_BOOL Some parameters were promoted 20110808
4 Importing IS_FORMAL_PARAM_COMBI Call by reference Type reference (TYPE) FUOP_TYPES_S List with possible formal parameter sets 20110808
5 Importing IT_ACTUAL_PARAMETERS Call by reference Type reference (TYPE) ACTUAL_PARAMETERS_T List with actual parameter set 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110811
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110811

Method VALIDATE_UNARY_TYPES Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting ES_FORMAL_PARAM_COMBI Call by reference Type reference (TYPE) FUOP_TYPES_S Used formal parameter set 20110808
2 Exporting ET_ACTUAL_PARAMETERS Call by reference Type reference (TYPE) ACTUAL_PARAMETERS_T List with actual parameter set 20110808
3 Importing IO_EXPR_UNARY Call by reference Object reference (TYPE REF TO) /IWCOR/IF_DS_EXPR_UNARY Unary operator node 20110808
# Exception Resumable Description Created on
1 /IWCOR/CX_DS_BAD_REQUEST 20110811
2 /IWCOR/CX_DS_INTERNAL_ERROR 20110811
History
Last changed by/on SAP  20131127 
SAP Release Created in 200