SAP ABAP Class CL_ACI_PARSER (EXPERIMENTAL, DON'T USE (ACI ABAP Parser))
Hierarchy
SAP_BASIS (Software Component) SAP Basis Component
   BC-ABA-LA (Application Component) Syntax, Compiler, Runtime
     SABP_ACI_API (Package) EXPERIMENTAL, DON'T USE (API for the ACI)
Properties
Class CL_ACI_PARSER  
Short Description EXPERIMENTAL, DON'T USE (ACI ABAP Parser)    
Super Class    
Instantiability of a Class 2  Public 
Final    
General Data
Message Class    
Program status     
Category 0   
Package SABP_ACI_API   EXPERIMENTAL, DON'T USE (API for the ACI) 
Created 20080331   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)
2 CL_ACI_PARSER Forward declaration class (CLASS c DEFINITION DEFERRED)  Forward declaration class (CLASS c DEFINITION DEFERRED)
Interfaces
Class CL_ACI_PARSER has no interface implemented.
Friends
Class CL_ACI_PARSER has no friend class.
Attributes
# Attribute Level Visibility Read only Typing Associated Type Initial Value Description Created on
1 CO_MODE_NO_AUTOMATIC_INCLUDES Constant Private Type reference (TYPE) CL_ACI_PARSER=>TY_PARSER_MODE 128 Internal, not supported 20090115
2 CO_MODE_NO_ERR_STDOUT Constant Private Type reference (TYPE) CL_ACI_PARSER=>TY_PARSER_MODE 256 Internal, not supported 20090115
3 CO_MSGCAT_KERNEL Constant Private Type reference (TYPE) TY_MSGCAT 'K' 20090106
4 CO_MSGCAT_T100 Constant Private Type reference (TYPE) TY_MSGCAT '1' 20090106
5 CO_MSGCAT_TRMSG Constant Private Type reference (TYPE) TY_MSGCAT 'R' 20090106
6 CO_QUALIFY_TOKENS_RC Constant Public See coding Actual return codes of QUALIFY_TOKENS routine 20081208
7 MODE_COMPOUND Constant Public Type reference (TYPE) CL_ACI_PARSER=>TY_PARSER_MODE 0 Compound construction 20080723
8 MODE_FLATVIEW Constant Public Type reference (TYPE) CL_ACI_PARSER=>TY_PARSER_MODE 1 Flat statements 20080723
9 M_AST Instance attribute Private Object reference (TYPE REF TO) CL_ACI_ASTNODE AST Node 20080331
10 M_MESSAGES Instance attribute Private Type reference (TYPE) TY_T_MESSAGES_INT Error messages 20081229
11 M_STDOUT Instance attribute Private Type reference (TYPE) TY_T_STDOUT_INT 20081229
Methods
# Method Level Visibility Method type Description Created on
1 GET_AST Instance method Public Method Retrieve AST from parser 20080331
2 GET_MESSAGES Instance method Public Method Retrieve Message from parser 20090102
3 GET_MESSAGES_RESOLVED Instance method Public Method 20090608
4 GET_MESSAGES_WITH_POS_DETAILS Instance method Public Method 20100908
5 GET_STDOUT_INTERNAL Instance method Public Method Internal, no future support 20090113
6 PARSE Instance method Public Method Parse ABAP source 20080331
7 PARSE_PROGRAM Instance method Public Method Parse ABAP source 20081119
8 QUALIFY_TOKENS Instance method Public Method RS_QUALIFY_ABAP_TOKENS based on ACI parser 20080801
9 QUALIFY_TOKENS_FOR_STMNTS Instance method Public Method 20100908
10 RESOLVE_MESSAGE Static method Private Method 20090409
11 TOKENIZE Instance method Public Method 20100908
12 WRITE_MSG Instance method Public Method Internal, no future support 20081230
13 WRITE_STDOUT_INTERNAL Instance method Public Method Internal, no future support 20090113
Events
Class CL_ACI_PARSER has no event.
Types
# Type Visibility Typing Associated Type Description Created on Type Source
1 TY_MSGCAT Public See coding 20090106 TY_MSGCAT type c length 1
2 TY_PARSER_MODE Public Type reference (TYPE) INT4 20090113
3 TY_QUALIFY_TOKENS_RC Public Type reference (TYPE) I 20080812
4 TY_SCANNER_MODE Public Type reference (TYPE) INT4 20100908
5 TY_S_INCLUDE_SOURCING Public See coding 20100903 BEGIN OF ty_s_include_sourcing, progname TYPE PROGNAME, R3STATE type R3STATE, SOURCE TYPE STRING, END OF ty_s_include_sourcing
6 TY_S_MESSAGE Public See coding 20090102 begin of ty_s_message, idx type int4, srcindex type int4, line type int4, column type int4, msgcat type TY_MSGCAT, msgty type SYMSGTY, " message type ( (W)arning, (E)rror ) . msgid type SYMSGID, " ( T100-arbgb), " ~ trmsg-keyw ( char 20) ! msgnr type MSGNR , " (T100-msgnr), " trmsg_numb ( c 40 ) keyword type TRMSG_KEYW, MSGNUMBER type TRMSG_NUMB, msgv1 type string, "symsgv, msgv2 type string, " symsgv, msgv3 type string, " symsgv, msgv4 type string, " symsgv, spras type spras, " language of the corresponding message msgtext type string, " a calculated string syuline, " 255 chars of msgtext msgtext, end of ty_s_message
7 TY_S_MESSAGE_INT Private See coding 20090102 begin of ty_s_message_INT, idx type int4, " 4 srcindex type int4, " 8 line type int4, "12 column type int4, "16 msgcat type TY_MSGCAT, "18 / 17 msgty type SYMSGTY, " message type ( (W)arning, (E)rror ) . " 20/18 msgid type SYMSGID, " ( T100-arbgb), " ~ trmsg-keyw ( char 20) ! / "40/38 msgnr type MSGNR , " (T100-msgnr), " trmsg_numb ( c 40 ) "46/39 spras type spras, " language of the corresponding message "48/40 msgv1 type string, "symsgv, msgv2 type string, " symsgv, msgv3 type string, " symsgv, msgv4 type string, " symsgv, msgtext type string, " a kernel-generated message text, with variable substituted. " +8 end of ty_s_message_INT
8 TY_S_MESSAGE_WITH_POS Public See coding 20100908 BEGIN OF ty_s_message_with_pos, idx TYPE int4, msgcat TYPE ty_msgcat, msgty TYPE symsgty, " message type ( (W)arning, (E)rror ) . msgid TYPE symsgid, " ( T100-arbgb), " ~ trmsg-keyw ( char 20) ! msgnr TYPE msgnr , " (T100-msgnr), " trmsg_numb ( c 40 ) keyword TYPE trmsg_keyw, msgnumber TYPE trmsg_numb, msgv1 TYPE string, "symsgv, msgv2 TYPE string, " symsgv, msgv3 TYPE string, " symsgv, msgv4 TYPE string, " symsgv, spras TYPE spras, " language of the corresponding message msgtext TYPE string, " a calculated string syuline, " 255 chars of msgtext msgtext, call_hierarchy TYPE aci_source_positions, END OF ty_s_message_with_pos
9 TY_S_STDOUT_INT Private Type reference (TYPE) STRING 20090102
10 TY_S_TOKEN Public See coding 20100908 BEGIN OF ty_s_token, num TYPE int4, line TYPE int4, column TYPE int4, length TYPE int4, lexeme TYPE string, sub_tokens type int4, "if <> 0 number of lines for subtoken END OF ty_s_token
11 TY_T_INCLUDE_SOURCING Public See coding 20100903 ty_t_include_sourcing type standard table of ty_s_include_sourcing
12 TY_T_MESSAGES Public See coding Message table, subject to change! 20090102 ty_t_messages type standard table of ty_s_message with default key
13 TY_T_MESSAGES_INT Private See coding 20090102 ty_t_messages_INT type standard table of ty_s_message_INT
14 TY_T_MESSAGES_WITH_POS Public See coding 20100908 ty_t_messages_with_pos TYPE STANDARD TABLE OF ty_s_message_with_pos WITH DEFAULT KEY
15 TY_T_STDOUT_INT Private See coding 20090102 TY_T_STDOUT_INT type standard table of ty_s_stdout_INT
16 TY_T_TOKENS Public See coding 20100908 ty_t_tokens TYPE STANDARD TABLE OF ty_s_token WITH DEFAULT KEY
17 TY_T_TRACE_INT Private See coding 20090102 TY_T_TRACE_INT type standard table of ty_s_stdout_INT
Method Signatures

Method GET_AST Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning AST Value transfer Object reference (TYPE REF TO) CL_ACI_ASTROOT Root node of the parsed program's AST 20080331

Method GET_AST on class CL_ACI_PARSER has no exception.

Method GET_MESSAGES Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning MESSAGES Value transfer Type reference (TYPE) TY_T_MESSAGES messages, subject to change 20090102

Method GET_MESSAGES on class CL_ACI_PARSER has no exception.

Method GET_MESSAGES_RESOLVED Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning MESSAGES Value transfer Type reference (TYPE) TY_T_MESSAGES 20090608

Method GET_MESSAGES_RESOLVED on class CL_ACI_PARSER has no exception.

Method GET_MESSAGES_WITH_POS_DETAILS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning RE_MESSAGES Value transfer Type reference (TYPE) TY_T_MESSAGES_WITH_POS 20100908
# Exception Resumable Description Created on
1 CX_ACI_ERROR 20100908

Method GET_STDOUT_INTERNAL Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning STDOUT Value transfer Type reference (TYPE) STRING_TABLE Table of Strings 20090113

Method GET_STDOUT_INTERNAL on class CL_ACI_PARSER has no exception.

Method PARSE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting ERROR Call by reference Type reference (TYPE) STRING Error text (there might be an AST despite of errors!) 20080401
2 Importing INACTIVE_INCLUDES Call by reference Type reference (TYPE) ABAP_BOOL ABAP_FALSE take inactive includes of user 20100903
3 Importing INCLUDE_SOURCING Call by reference Type reference (TYPE) TY_T_INCLUDE_SOURCING Table to specifiy include sources 20100903
4 Importing MODE Call by reference Type reference (TYPE) INT4 0 Parsing mode 20080723
5 Importing RESOLVE_INCLUDE Call by reference Type reference (TYPE) ABAP_BOOL 'X' 'X': replace INCLUDE statements with the text they refer to 20080611
6 Importing SOURCE Call by reference Type reference (TYPE) STRING ABAP source to be parsed 20080331
7 Importing SUBC Call by reference Type reference (TYPE) SUBC '1' Program type (see TRDIR~SUBC) 20081203
8 Importing TRDIR_ENTRY Call by reference Type reference (TYPE) TRDIR Generated Table for View 20100903
# Exception Resumable Description Created on
1 CX_ACI_ERROR EXPERIMENTAL, DON'T USE (Errors related to the ACI) 20090109

Method PARSE_PROGRAM Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting ERROR Call by reference Type reference (TYPE) STRING Error text (an AST can be created despite of errors) 20081119
2 Importing INACTIVE_INCLUDES Call by reference Type reference (TYPE) ABAP_BOOL ABAP_FALSE take inactive includes of this user 20100903
3 Importing INCLUDE_SOURCING Call by reference Type reference (TYPE) TY_T_INCLUDE_SOURCING Table to specifiy include sources 20100903
4 Importing MODE Call by reference Type reference (TYPE) INT4 0 Parsing mode 20081119
5 Importing PROGNAME Call by reference Type reference (TYPE) PROGNAME Name of the program to be parsed 20081119
6 Importing RESOLVE_INCLUDE Call by reference Type reference (TYPE) ABAP_BOOL 'X' 'X': replace INCLUDE statements with the text they refer to 20081119
# Exception Resumable Description Created on
1 CX_ACI_ERROR EXPERIMENTAL, DON'T USE (Errors related to the ACI) 20090109

Method QUALIFY_TOKENS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing INDEX_FROM Value transfer Type reference (TYPE) SSTMNT-FROM Position of statement's first token in STOKE(S)X_TAB 20080801
2 Importing INDEX_TO Value transfer Type reference (TYPE) SSTMNT-TO Position of statement's last token in STOKE(S)X_TAB 20080801
3 Importing OVERFLOW Call by reference Type reference (TYPE) C SPACE Buffer for tokens that are too long for STOKEX-STR field 20080801
4 Exporting RC Call by reference Type reference (TYPE) TY_QUALIFY_TOKENS_RC Return code (<> 0: error, see CO_QUALIFY_TOKENS_RC) 20080812
5 Importing SIMPLIFIED Value transfer Type reference (TYPE) CHAR1 ' ' 20080801
6 Importing STATEMENT_TYPE Value transfer Type reference (TYPE) SSTMNT-TYPE Type of statement as returned by SCAN ABAP-SOURCE 20080801
7 Changing STOKESX_TAB Call by reference Type reference (TYPE) SANA_STOKESX_TAB String-based token table to qualify 20080801
8 Changing STOKEX_TAB Call by reference Type reference (TYPE) SANA_STOKEX_TAB Token table to be qualified, based on char sequence 20080801

Method QUALIFY_TOKENS on class CL_ACI_PARSER has no exception.

Method QUALIFY_TOKENS_FOR_STMNTS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing OVERFLOW Call by reference Type reference (TYPE) C SPACE 20100908
2 Exporting RC Call by reference Type reference (TYPE) TY_QUALIFY_TOKENS_RC 20100908
3 Importing SSTMNT_TAB Call by reference Type reference (TYPE) SYSCH_STATEMENTS 20100908
4 Changing STOKESX_TAB Call by reference Type reference (TYPE) SANA_STOKESX_TAB 20100908
5 Changing STOKEX_TAB Call by reference Type reference (TYPE) SANA_STOKEX_TAB 20100908

Method QUALIFY_TOKENS_FOR_STMNTS on class CL_ACI_PARSER has no exception.

Method RESOLVE_MESSAGE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_S_MESSAGE Call by reference Type reference (TYPE) TY_S_MESSAGE 20090409
2 Returning R_RESULT Value transfer Type reference (TYPE) STRING 20090409

Method RESOLVE_MESSAGE on class CL_ACI_PARSER has no exception.

Method TOKENIZE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting EX_TOKENS Call by reference Type reference (TYPE) TY_T_TOKENS 20100908
2 Importing SCANNER_MODE Call by reference Type reference (TYPE) I 3 20100908
3 Importing SOURCE Call by reference Type reference (TYPE) STRING 20100908
4 Importing WITH_SUB_TOKENS Call by reference Type reference (TYPE) ABAP_BOOL ABAP_TRUE 20100908

Method TOKENIZE on class CL_ACI_PARSER has no exception.

Method WRITE_MSG Signature

Method WRITE_MSG on class CL_ACI_PARSER has no parameter.
Method WRITE_MSG on class CL_ACI_PARSER has no exception.

Method WRITE_STDOUT_INTERNAL Signature

Method WRITE_STDOUT_INTERNAL on class CL_ACI_PARSER has no parameter.
Method WRITE_STDOUT_INTERNAL on class CL_ACI_PARSER has no exception.
History
Last changed by/on SAP  20110908 
SAP Release Created in 712