SAP ABAP Class CL_ABAP_SYNTAX_TREE (Syntax Tree of ABAP Program)
Hierarchy
SAP_BASIS (Software Component) SAP Basis Component
   BC-ABA-LA (Application Component) Syntax, Compiler, Runtime
     SABP_COMPILER (Package) ABAP Compiler
Properties
Class CL_ABAP_SYNTAX_TREE  
Short Description Syntax Tree of ABAP Program    
Super Class    
Instantiability of a Class 0  Private 
Final    
General Data
Message Class    
Program status     
Category 0   
Package SABP_COMPILER   ABAP Compiler 
Created 20130201   SAP 
Last change 20140121   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 SANA Type group use (TYPE-POOLS tp)  Type group use (TYPE-POOLS tp)
Interfaces
Class CL_ABAP_SYNTAX_TREE has no interface implemented.
Friends
Class CL_ABAP_SYNTAX_TREE has no friend class.
Attributes
# Attribute Level Visibility Read only Typing Associated Type Initial Value Description Created on
1 AX_ANCESTOR Constant Public Type reference (TYPE) T_AXIS 5 Reverse Axis: Real Parent Nodes 20130304
2 AX_ANCESTOR_OR_SELF Constant Public Type reference (TYPE) T_AXIS 6 Reverse Axis: Parent Node 20130304
3 AX_CHILD Constant Public Type reference (TYPE) T_AXIS 1 Forwards Axis: Direct Subnodes 20130304
4 AX_DESCENDANT Constant Public Type reference (TYPE) T_AXIS 2 Forwards Axis: Real Parent Nodes 20130304
5 AX_DESCENDANT_OR_SELF Constant Public Type reference (TYPE) T_AXIS 3 Forwards Axis: Subnodes 20130304
6 AX_FOLLOWING Constant Public Type reference (TYPE) T_AXIS 8 Forwards Axis: Subsequent Nodes 20130304
7 AX_FOLLOWING_SIBLING Constant Public Type reference (TYPE) T_AXIS 7 Forwards Axis: Subsequent Nodes on Same Level 20130304
8 AX_PARENT Constant Public Type reference (TYPE) T_AXIS 4 Reverse Axis: Direct Parent Node 20130304
9 AX_PRECEDING Constant Public Type reference (TYPE) T_AXIS 10 Reverse Axis: Predecessor Nodes 20130304
10 AX_PRECEDING_SIBLING Constant Public Type reference (TYPE) T_AXIS 9 Reverse Axis: Predecessor Nodes on Same Level 20130304
11 CT_CONTROL_FLOW Constant Public Type reference (TYPE) T_CATEGORY 'F' Note Category: Control Flow 20130304
12 CT_INVOCATION Constant Public Type reference (TYPE) T_CATEGORY 'I' Node Category: Call 20130304
13 FM_EXCLUDE_SUB Constant Public Type reference (TYPE) T_FILTERMODE 3 Filter Mode (Only for Forwards Axes): Exclude Subtree 20130305
14 FM_INCLUDE_SUB Constant Public Type reference (TYPE) T_FILTERMODE 2 Filter Mode (Only for Forwards Axes): Include Subtree 20130305
15 FM_RECURSIVELY Constant Public Type reference (TYPE) T_FILTERMODE 1 Filter Mode: Apply Recursively 20130305
16 FO_AND Constant Public Type reference (TYPE) T_LOGICAL_OP 'A' Filter Operator: AND 20130304
17 FO_OR Constant Public Type reference (TYPE) T_LOGICAL_OP 'O' Filter Operator: OR 20130304
18 G_ASTNAMES Static Attribute Public Type reference (TYPE) T_ASTNAMETAB Names in Tree 20130205
19 M_C_PTR Instance attribute Private Type reference (TYPE) %_C_POINTER Kernel Pointer 20130205
20 M_DIAGINFO Instance attribute Public Type reference (TYPE) T_DIAGINFO Diagnostic Information 20130311
21 M_LEVEL_NODES Instance attribute Public Type reference (TYPE) ABAP_BOOL Nodes for INCLUDE and Macro Calls 20130311
22 M_NODE_CNT Instance attribute Public Type reference (TYPE) I Number of Nodes in Tree 20130207
23 M_STMT_INDEX_FROM Instance attribute Public Type reference (TYPE) I Index of First Statement 20130311
24 M_STMT_INDEX_TO Instance attribute Public Type reference (TYPE) I Index of Last Statement 20130311
25 RP_DIRTY Constant Public Type reference (TYPE) T_RULEPROP 48 Grammar rule: Not covered or not covered in full 20130304
26 RP_DIRTY_PART Constant Public Type reference (TYPE) T_RULEPROP 16 Grammar rule: Not covered in full 20130304
27 RP_DIRTY_UNCOVERED Constant Public Type reference (TYPE) T_RULEPROP 32 Grammar rule: Not covered 20130304
28 RP_IDENT Constant Public Type reference (TYPE) T_RULEPROP 1 Grammar rule: Name 20130304
29 RP_NONE Constant Public Type reference (TYPE) T_RULEPROP IS INITIAL Grammar rule: No property 20130304
30 RP_OBSOLETE Constant Public Type reference (TYPE) T_RULEPROP 2 Grammar rule: Obsolete 20130304
31 RP_PRIVATE Constant Public Type reference (TYPE) T_RULEPROP 4 Grammar rule: Private 20130304
32 RP_STATEMENT Constant Public Type reference (TYPE) T_RULEPROP 8 Grammar rule: Statement 20130305
33 RP_WRITE_ACCESS Constant Public Type reference (TYPE) T_RULEPROP 128 Grammar rule: Write 20130304
Methods
# Method Level Visibility Method type Description Created on
1 BUILD Instance method Private Method Create Syntax Tree 20130311
2 CLASS_CONSTRUCTOR Static method Public Constructor Class Constructor 20130205
3 CREATE Static method Public Method Create Syntax Tree 20130311
4 DESTRUCTOR Instance method Public Destructor Destructor 20130205
5 GET_CATEGORY Static method Private Method Get AST name indexes for category 20130304
6 GET_NAME_FILTER Static method Public Method Get AST name index intervals 20130312
7 GET_NODES Instance method Public Method Find Nodes 20130222
8 INITIALIZE_CLASS Static method Private Method Initializes the kernel implementation 20130301
9 TO_XML Instance method Public Method Serialize Syntax Tree as XML 20130205
10 TO_XML_WITH_SRC Instance method Public Method Serialize Syntax Tree with Source Code 20130207
Events
Class CL_ABAP_SYNTAX_TREE has no event.
Types
# Type Visibility Typing Associated Type Description Created on Type Source
1 T_ASTNAME Public See coding AST Name <-> Index Assignment 20130205 begin of t_astname, index type i, name type string, end of t_astname
2 T_ASTNAMETAB Public See coding AST Names <-> Indexes Assignment Table 20130205 t_astnametab type sorted table of t_astname with unique key index with unique hashed key kn components name
3 T_ASTSRC Public See coding Source/AST Pair 20130207 begin of t_astsrc, astxml type string, source type string, node_index type i, end of t_astsrc
4 T_ASTSRCTAB Public See coding Table of Source/AST Pairs 20130207 t_astsrctab type standard table of t_astsrc with empty key
5 T_AXIS Public Type reference (TYPE) I Navigation Axis (AX_* Constants) 20130227
6 T_CATEGORIES Public Type reference (TYPE) STRING AST Categories (One or More CT_*) 20130304
7 T_CATEGORY Public See coding AST Node Category 20130304 t_category type c length 1
8 T_CATEGORY_FILTER Public See coding AST Category Filter 20130304 begin of t_category_filter, inclusive type t_categories, exclusive type t_categories, incl_op type t_logical_op, excl_op type t_logical_op, end of t_category_filter
9 T_CATEGORY_MEMBERS Private See coding AST name indexes in a category 20130312 t_category_members type sorted table of i with unique key table_line
10 T_DIAGINFO Public See coding Diagnostic Information 20130222 begin of t_diaginfo, time1 type i, time2 type i, time3 type i, time4 type i, time5 type i, time6 type i, end of t_diaginfo
11 T_FILTERMODE Public Type reference (TYPE) I Filter Mode (FM_* Constants) 20130305
12 T_LOGICAL_OP Public See coding Logical Operator in Filter 20130304 t_logical_op type c length 1
13 T_NAMEINTVL Public See coding Interval of AST Name Indexes 20130312 begin of t_nameintvl, lo type i, hi type i, end of t_nameintvl
14 T_NAMERANGE Public See coding Range Table of AST Names 20130215 t_namerange type range of string
15 T_NAME_FILTER Public See coding AST Name Index Filter 20130312 t_name_filter type standard table of t_nameintvl with empty key
16 T_NODEINFO Public See coding AST Node Information 20130211 begin of t_nodeinfo, index type i, depth type i, token_index type i, name_index type int2, token_len type int2, token_off type int2, token_type type c length 1, multi_token type int1, rule_prop type t_ruleprop, end of t_nodeinfo
17 T_NODEINFOTAB Public See coding Table of AST Node Information 20130211 t_nodeinfotab type standard table of t_nodeinfo with empty key
18 T_RULEPROP Public See coding Grammar Rule Property (RP_* Constants) 20130227 t_ruleprop type X length 1
19 T_RULEPROP_FILTER Public See coding Rule Property Filter 20130227 begin of t_ruleprop_filter, incl_op type t_logical_op, excl_op type t_logical_op, inclusive type t_ruleprop, exclusive type t_ruleprop, end of t_ruleprop_filter
Method Signatures

Method BUILD Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing DISCARD_STREAM Call by reference Type reference (TYPE) ABAP_BOOL ABAP_TRUE Eingabestrom verwerfen 20130311
2 Importing STMNTS Call by reference Type reference (TYPE) SSTMNT_TAB SCAN-Anweisungstabelle 20130311
3 Importing TOKENS Call by reference Type reference (TYPE) STOKESX_TAB SCAN-Token-Tabelle 20130311
4 Changing TOKENS_QUALIFY Call by reference Type reference (TYPE) STOKESX_TAB SCAN-Token-Tabelle (zu qualifizieren) 20130311

Method BUILD on class CL_ABAP_SYNTAX_TREE has no exception.

Method CLASS_CONSTRUCTOR Signature

Method CLASS_CONSTRUCTOR on class CL_ABAP_SYNTAX_TREE has no parameter.
Method CLASS_CONSTRUCTOR on class CL_ABAP_SYNTAX_TREE has no exception.

Method CREATE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing DISCARD_STREAM Call by reference Type reference (TYPE) ABAP_BOOL ABAP_TRUE Eingabestrom verwerfen 20130311
2 Importing STMNTS Call by reference Type reference (TYPE) SSTMNT_TAB SCAN-Anweisungstabelle 20130311
3 Importing STMT_INDEX_FROM Value transfer Type reference (TYPE) SLEVEL-FROM 0 Index des ersten Statements 20130311
4 Importing STMT_INDEX_TO Value transfer Type reference (TYPE) SLEVEL-TO 0 Index des letzten Statements 20130311
5 Importing TOKENS Call by reference Type reference (TYPE) STOKESX_TAB SCAN-Token-Tabelle 20130311
6 Changing TOKENS_QUALIFY Call by reference Type reference (TYPE) STOKESX_TAB SCAN-Token-Tabelle (zu qualifizieren) 20130311
7 Returning TREE Value transfer Object reference (TYPE REF TO) CL_ABAP_SYNTAX_TREE Syntaxbaum eines ABAP-Programms 20130311
8 Importing WITH_LEVEL_NODES Call by reference Type reference (TYPE) ABAP_BOOL ABAP_FALSE Knoten für INCLUDE und Makro-Aufrufe anlegen 20130311

Method CREATE on class CL_ABAP_SYNTAX_TREE has no exception.

Method DESTRUCTOR Signature

Method DESTRUCTOR on class CL_ABAP_SYNTAX_TREE has no parameter.
Method DESTRUCTOR on class CL_ABAP_SYNTAX_TREE has no exception.

Method GET_CATEGORY Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing CATEGORY Call by reference Type reference (TYPE) CHAR1 Kategorie 20130304
2 Returning NAME_INDEXES Value transfer Type reference (TYPE) T_CATEGORY_MEMBERS AST-Namen-Indizes zu Kategorie 20130304

Method GET_CATEGORY on class CL_ABAP_SYNTAX_TREE has no exception.

Method GET_NAME_FILTER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing CATEGORIES Call by reference Type reference (TYPE) T_CATEGORY_FILTER Filter für AST-Kategorien 20130312
2 Returning NAME_FILTER Value transfer Type reference (TYPE) T_NAME_FILTER AST-Namens-Indexintervalle 20130312
3 Importing NAME_RANGE Call by reference Type reference (TYPE) T_NAMERANGE Ranges-Tabelle von AST-Namen 20130312

Method GET_NAME_FILTER on class CL_ABAP_SYNTAX_TREE has no exception.

Method GET_NODES Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing AXIS Call by reference Type reference (TYPE) T_AXIS AX_DESCENDANT Achse (Konstanten AX_*) 20130222
2 Importing FILTER_MODE Call by reference Type reference (TYPE) T_FILTERMODE FM_RECURSIVELY Filter-Modus (Konstanten FM_*) 20130305
3 Importing NAME_FILTER Call by reference Type reference (TYPE) T_NAME_FILTER Filter: AST-Namens-Indexintervalle 20130312
4 Exporting NODE Call by reference Type reference (TYPE) T_NODEINFO Erster Knoten 20130222
5 Returning NODES Value transfer Type reference (TYPE) T_NODEINFOTAB Knotenmenge 20130222
6 Importing NODE_INDEX Call by reference Type reference (TYPE) I 0 Knotenindex (0: alle) 20130222
7 Importing RULE_PROPS Call by reference Type reference (TYPE) T_RULEPROP_FILTER Filter: Regeleigenschaften 20130227

Method GET_NODES on class CL_ABAP_SYNTAX_TREE has no exception.

Method INITIALIZE_CLASS Signature

Method INITIALIZE_CLASS on class CL_ABAP_SYNTAX_TREE has no parameter.
Method INITIALIZE_CLASS on class CL_ABAP_SYNTAX_TREE has no exception.

Method TO_XML Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing DIAGNOSTIC Call by reference Type reference (TYPE) ABAP_BOOL ABAP_FALSE Zusatzinformationen in XML 20130207
2 Importing DISCARD_STREAM Call by reference Type reference (TYPE) ABAP_BOOL ABAP_TRUE Eingabestrom verwerfen 20130221
3 Importing NAME_FILTER Call by reference Type reference (TYPE) T_NAME_FILTER Filter: AST-Namens-Indexintervalle 20130312
4 Importing RULE_PROPS Call by reference Type reference (TYPE) T_RULEPROP_FILTER Filter: Regeleigenschaften 20130227
5 Importing WITH_ORPHAN_TEXT Call by reference Type reference (TYPE) ABAP_BOOL ABAP_FALSE Source außerhalb von AST-Knoten aufnehmen 20130315
6 Importing WRITER Call by reference Object reference (TYPE REF TO) CL_SXML_WRITER XML-Writer der sXML-Bibliothek 20130205

Method TO_XML on class CL_ABAP_SYNTAX_TREE has no exception.

Method TO_XML_WITH_SRC Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning ASTXML_SRC_PAIRS Value transfer Type reference (TYPE) T_ASTSRCTAB Ergebnis 20130207
2 Importing DIAGNOSTIC Call by reference Type reference (TYPE) ABAP_BOOL ABAP_FALSE Zusatzinformationen in XML 20130207
3 Importing DISCARD_STREAM Call by reference Type reference (TYPE) ABAP_BOOL ABAP_TRUE Eingabestrom verwerfen 20130221
4 Importing NAME_FILTER Call by reference Type reference (TYPE) T_NAME_FILTER Filter: AST-Namens-Indexintervalle 20130312
5 Importing RULE_PROPS Call by reference Type reference (TYPE) T_RULEPROP_FILTER Filter: Regeleigenschaften 20130227
6 Importing WITH_ORPHAN_TEXT Call by reference Type reference (TYPE) ABAP_BOOL ABAP_FALSE Source außerhalb von AST-Knoten aufnehmen 20130315

Method TO_XML_WITH_SRC on class CL_ABAP_SYNTAX_TREE has no exception.
History
Last changed by/on SAP  20140121 
SAP Release Created in 740