------------------------------------------------------------------------------
-- --
-- ASIS Tester And iNTerpreter (ASIStant) COMPONENTS --
-- --
-- A S I S T A N T . F U N C E N U M --
-- --
-- S p e c --
-- --
-- Copyright (c) 1997-1999, Free Software Foundation, Inc. --
-- --
-- ASIStant is free software; you can redistribute it and/or modify it --
-- under terms of the GNU General Public License as published by the Free --
-- Software Foundation; either version 2, or (at your option) any later --
-- version. ASIStant is distributed in the hope that it will be useful, --
-- but WITHOUT ANY WARRANTY; without even the implied warranty of MER- --
-- CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General --
-- Public License for more details. You should have received a copy of the --
-- GNU General Public License distributed with GNAT; see file COPYING. If --
-- not, write to the Free Software Foundation, 59 Temple Place Suite 330, --
-- Boston, MA 02111-1307, USA. --
-- --
-- ASIStant is an evolution of ASIStint tool that was created by --
-- Vasiliy Fofanov as part of a collaboration between Software Engineering --
-- Laboratory of the Swiss Federal Institute of Technology in Lausanne, --
-- Switzerland, and the Scientific Research Computer Center of the Moscow --
-- University, Russia, supported by the Swiss National Science Foundation --
-- grant #7SUPJ048247, "Development of ASIS for GNAT with industry quality" --
-- --
-- ASIStant is distributed as a part of the ASIS implementation for GNAT --
-- (ASIS-for-GNAT) and is maintained by Ada Core Technologies Inc --
-- (http://www.gnat.com). --
------------------------------------------------------------------------------
with ASIStant.Table; use ASIStant.Table;
package ASIStant.FuncEnum is
------------------------------------------------------------------------------
-- ASIS queries enumeration and template information
------------------------------------------------------------------------------
------------------------------------------------------------------------------
-- All ASIS 95 queries must be supported, except a generic query
-- Traverse_Element. Failure to recognize any query which is not in the
-- Open Problems List is a bug, and the corresponding bug report will
-- be greatly appreciated.
------------------------------------------------------------------------------
------------------------------------------------------------------------------
-- OPEN PROBLEMS LIST (not implemented queries)
-- Traverse_Element not supported due to major conceptual limitations
-- Asis.Implementation.Set_Status
-- package Asis.Ada_Environments.Containers (all queries & types)
-- Asis.Compilation_Units.Enclosing_Container
-- package Asis.Compilation_Units.Times
-- package Asis.Ids
-- package Asis.Data_Decomposition and <...>.Portable_Transfer
------------------------------------------------------------------------------
------------------------------------------------------------------------------
-- For brevity sake, the following convention is used to identify a query
-- profile: the types of query parameters are written one after another in
-- an abbreviated form, then the portion Ret<Return Type Abbreviation> is
-- appended. Below is a list of abbreviations:
-- Bool - Boolean
-- Ctx - Asis.Context
-- CUnit - Asis.Compilation_Unit
-- CUnitList - Asis.Compilation_Unit_List
-- DDA_ArrC - DDA.Array_Component
-- DDA_ArrCList - DDA.Array_Component_List
-- DDA_RecC - DDA.Record_Component
-- DDA_RecCList - DDA.Record_Component_List
-- Elem - Asis.Element
-- ElemList - Asis.Element_List
-- Int - Integer/Asis.Asis_Integer
-- Line - Asis.Text.Line
-- LineList - Asis.Text.Line_List
-- Null - (RetNull) Procedure
-- Relship - Asis.Compilation_Units.Relationship
-- Span - Asis.Text.Span
--
-- FOR EXAMPLE, the profile
-- (C : Asis.Compilation_Unit; I : Integer) return Asis.Element_List
-- will be represented as
-- CUnitIntRetElemList
------------------------------------------------------------------------------
-- Enumeration of all queries
type Switch_Index is (
-- Placeholder
Invalid_Index,
-- CtxRetBool
Exists,
Is_Open,
Has_Associations,
-- CtxRetCUnitList
Compilation_Unit_Bodies,
Compilation_Units,
Library_Unit_Declarations,
-- CtxRetElemList
Configuration_Pragmas,
-- CtxRetNull
Close,
Dissociate,
Open,
-- CtxRetString
Debug_Image_Ctx,
Name,
Parameters,
-- CtxStringStringRetNull
Associate,
-- CUnitBoolRetElemList
Context_Clause_Elements,
-- CUnitCtxRetCUnit
Corresponding_Body_CU_Ctx,
Corresponding_Declaration_CU_Ctx,
Corresponding_Parent_Declaration_Ctx,
Corresponding_Subunit_Parent_Body_Ctx,
-- CUnitCtxRetCUnitList
Corresponding_Children_Ctx,
Subunits_Ctx,
-- CUnitCUnitRetBool
Is_Equal_CU,
Is_Identical_CU,
-- CUnitIntIntRetElem
Find_Element,
-- CUnitListCtxRetRelship
Elaboration_Order,
-- CUnitListCUnitListCtxStringRetRelship
Semantic_Dependence_Order,
-- CUnitListRetBool
Is_Nil_CUL,
-- CUnitRetBool
Can_Be_Main_Program,
Exists_CU,
Is_Body_Required,
Is_Nil_CU,
-- CUnitRetCtx
Enclosing_Context,
-- CUnitRetCUnit
Corresponding_Body_CU,
Corresponding_Declaration_CU,
Corresponding_Parent_Declaration,
Corresponding_Subunit_Parent_Body,
-- CUnitRetCUnitList
Corresponding_Children,
Subunits,
-- CUnitRetElem
Browse_CU,
Unit_Declaration,
-- CUnitRetElemList
Compilation_Pragmas,
-- CUnitRetString
Compilation_Command_Line_Options,
Debug_Image_CU,
Object_Form,
Object_Name,
Text_Form,
Text_Name,
Unit_Class,
Unit_Full_Name,
Unit_Kind,
Unit_Origin,
Unique_Name,
-- CUnitStringRetATime
Attribute_Time,
-- CUnitStringRetBool
Has_Attribute,
-- CUnitStringRetString
Attribute_Values,
-- DDA_ArrCRetDDA_ArrC
DDA_Array_Components_2,
-- DDA_ArrCRetDDA_RecCList
DDA_Discriminant_Components_2,
DDA_Record_Components_2,
-- DDA_ArrCRetElem
DDA_Component_Indication,
-- DDA_RecCRetDDA_ArrC
DDA_Array_Components_1,
-- DDA_RecCRetDDA_RecCList
DDA_Discriminant_Components_1,
DDA_Record_Components_1,
-- DDA_RecCRetElem
DDA_Component_Declaration,
-- ElemBoolRetElemList
Accept_Body_Exception_Handlers,
Accept_Body_Statements,
Block_Declarative_Items,
Block_Exception_Handlers,
Block_Statements,
Body_Declarative_Items,
Body_Exception_Handlers,
Body_Statements,
Call_Statement_Parameters,
Component_Clauses,
Discriminant_Associations,
Function_Call_Parameters,
Generic_Actual_Part,
Generic_Formal_Part,
Handler_Statements,
Loop_Statements,
Private_Part_Declarative_Items,
Private_Part_Items,
Protected_Operation_Items,
Record_Component_Associations,
Record_Components,
Sequence_Of_Statements,
Statement_Paths,
Variants,
Visible_Part_Declarative_Items,
Visible_Part_Items,
-- ElemCtxRetElem
Corresponding_Body_Ctx,
Corresponding_Body_Stub_Ctx,
Corresponding_Declaration_Ctx,
Corresponding_Subunit_Ctx,
Corresponding_Type_Declaration_Ctx,
-- ElemElemBoolRetBool
Is_Referenced,
-- ElemElemBoolRetElemList
References,
-- ElemElemRetBool
Is_Equal,
Is_Identical,
-- ElemElemRetElem
Enclosing_Element_EEE,
-- ElemIntIntRetLineList
Lines_2,
-- ElemListRetBool
Is_Nil_EL,
-- ElemRetBool
Declarations_Is_Private_Present,
Definitions_Is_Private_Present,
Is_Declare_Block,
Is_Defaulted_Association,
Declarations_Is_Name_Repeated,
Statements_Is_Name_Repeated,
Is_Nil,
Is_Normalized,
Is_Part_Of_Implicit,
Is_Part_Of_Inherited,
Is_Part_Of_Instance,
Is_Prefix_Call,
Is_Private_Present,
Is_Subunit,
Is_Text_Available,
-- ElemRetCUnit
Enclosing_Compilation_Unit,
-- ElemRetDDA_ArrC
DDA_Array_Components,
-- ElemRetDDA_RecCList
DDA_Discriminant_Components,
DDA_Record_Components,
-- ElemRetElem
Accept_Entry_Direct_Name,
Accept_Entry_Index,
Access_To_Function_Result_Profile,
Access_To_Object_Definition,
Actual_Parameter,
Allocator_Qualified_Expression,
Allocator_Subtype_Indication,
Ancestor_Subtype_Indication,
Array_Component_Definition,
Assignment_Expression,
Assignment_Variable_Name,
Attribute_Designator_Identifier,
Body_Block_Statement,
Browse,
Called_Name,
Case_Expression,
Choice_Parameter_Specification,
Component_Clause_Position,
Component_Clause_Range,
Component_Expression,
Component_Subtype_Indication,
Condition_Expression,
Converted_Or_Qualified_Expression,
Converted_Or_Qualified_Subtype_Mark,
Corresponding_Base_Entity,
Corresponding_Body,
Corresponding_Body_Stub,
Corresponding_Called_Entity,
Corresponding_Called_Function,
Corresponding_Constant_Declaration,
Corresponding_Declaration,
Corresponding_Destination_Statement,
Corresponding_Entry,
Corresponding_Equality_Operator,
Corresponding_Expression_Type,
Corresponding_First_Subtype,
Corresponding_Generic_Element,
Corresponding_Last_Constraint,
Corresponding_Last_Subtype,
Corresponding_Loop_Exited,
Corresponding_Name_Declaration,
Corresponding_Name_Definition,
Corresponding_Parent_Subtype,
Corresponding_Root_Type,
Corresponding_Subprogram_Derivation,
Corresponding_Subunit,
Corresponding_Type,
Corresponding_Type_Declaration,
Corresponding_Type_Structure,
Declaration_Subtype_Mark,
Defining_Prefix,
Defining_Selector,
Delay_Expression,
Delta_Expression,
Digits_Expression,
Discriminant_Direct_Name,
Discriminant_Expression,
Discriminant_Part,
Enclosing_Element,
Entry_Barrier,
Entry_Family_Definition,
Entry_Index_Specification,
Exit_Condition,
Exit_Loop_Name,
Expression_Parenthesized,
Extension_Aggregate_Expression,
For_Loop_Parameter_Specification,
Formal_Parameter,
Formal_Subprogram_Default,
Generic_Unit_Name,
Goto_Label,
Guard,
Initialization_Expression,
Integer_Constraint,
Lower_Bound,
Membership_Test_Expression,
Membership_Test_Range,
Membership_Test_Subtype_Mark,
Mod_Clause_Expression,
Mod_Static_Expression,
Object_Declaration_View,
Parent_Subtype_Indication,
Prefix,
Qualified_Expression,
Raised_Exception,
Range_Attribute,
Real_Range_Constraint,
Record_Definition,
Renamed_Entity,
Representation_Clause_Expression,
Representation_Clause_Name,
Requeue_Entry_Name,
Result_Profile,
Return_Expression,
Selector,
Short_Circuit_Operation_Left_Expression,
Short_Circuit_Operation_Right_Expression,
Slice_Range,
Specification_Subtype_Definition,
Statement_Identifier,
Subtype_Constraint,
Subtype_Mark,
Type_Declaration_View,
Upper_Bound,
While_Condition,
-- ElemRetElemList
Aborted_Tasks,
Accept_Parameters,
Access_To_Subprogram_Parameter_Profile,
Array_Component_Associations,
Array_Component_Choices,
Attribute_Designator_Expressions,
Case_Statement_Alternative_Choices,
Clause_Names,
Corresponding_Name_Definition_List,
Corresponding_Pragmas,
Corresponding_Representation_Clauses,
Corresponding_Type_Operators,
DDA_All_Named_Components,
Discrete_Ranges,
Discrete_Subtype_Definitions,
Discriminant_Selector_Names,
Discriminants,
Enumeration_Literal_Declarations,
Exception_Choices,
Implicit_Components,
Implicit_Inherited_Declarations,
Implicit_Inherited_Subprograms,
Index_Expressions,
Index_Subtype_Definitions,
Label_Names,
Names,
Parameter_Profile,
Pragma_Argument_Associations,
Pragmas,
Record_Component_Choices,
Variant_Choices,
-- ElemRetInt
First_Line_Number,
Hash,
Last_Line_Number,
-- ElemRetLineList
Lines,
-- ElemRetSpan
Compilation_Span,
Compilation_Unit_Span,
Element_Span,
-- ElemRetString (mainly additional queries to cover enum results)
Access_Type_Kind,
Association_Kind,
Attribute_Kind,
Clause_Kind,
Constraint_Kind,
Debug_Image,
Declaration_Kind,
Declaration_Origin,
Default_Kind,
Defining_Name_Image,
Defining_Name_Kind,
Definition_Kind,
Discrete_Range_Kind,
Element_Image,
Element_Kind,
Expression_Kind,
Formal_Type_Kind,
Mode_Kind,
Name_Image,
Operator_Kind,
Path_Kind,
Position_Number_Image,
Pragma_Kind,
Pragma_Name_Image,
Representation_Clause_Kind,
Representation_Value_Image,
Root_Type_Kind,
Statement_Kind,
Trait_Kind,
Type_Kind,
Value_Image,
-- ElemSpanRetLineList
Lines_1,
-- IntIntRetBool
Eq,
Gt,
Lt,
-- IntIntRetInt
Add,
Sub,
-- LineRetString
Comment_Image,
Debug_Image_L,
Line_Image,
Non_Comment_Image,
-- RelshipRetCUnitList
Consistent,
Inconsistent,
Missing,
Circular,
-- RetBool
Attributes_Are_Supported,
Default_In_Mode_Supported,
Discriminant_Associations_Normalized,
Function_Call_Parameters_Normalized,
Generic_Actual_Part_Normalized,
Generic_Macro_Expansion_Supported,
Implicit_Components_Supported,
Inherited_Declarations_Supported,
Inherited_Subprograms_Supported,
Is_Commentary_Supported,
Is_Finalized,
Is_Formal_Parameter_Named_Notation_Supported,
Is_Initialized,
Is_Line_Number_Supported,
Is_Prefix_Call_Supported,
Is_Span_Column_Position_Supported,
Object_Declarations_Normalized,
Predefined_Operations_Supported,
Record_Component_Associations_Normalized,
-- RetCUnit
Nil_Compilation_Unit,
-- RetCUnitList
Nil_Compilation_Unit_List,
-- RetElem
Nil_Element,
-- RetElemList
Nil_Element_List,
-- RetLine
Nil_Line,
-- RetRelship
Nil_Relationship,
-- RetSpan
Nil_Span,
-- RetString
Asis_Implementor,
Asis_Implementor_Information,
Asis_Implementor_Version,
Asis_Version,
Attribute_Value_Delimiter,
Default_Name,
Default_Parameters,
Delimiter_Image,
Diagnosis,
Status,
-- SpanRetBool
Is_Nil_Sp,
-- SpanRetInt
First_Column,
First_Line,
Last_Column,
Last_Line,
-- StringCtxRetCUnit
Compilation_Unit_Body,
Library_Unit_Declaration,
-- StringRetNull
Finalize,
Initialize,
-- StringStringRetBool
Eq_SS,
Gt_SS,
Lt_SS,
-- StringStringRetString
Concat
);
subtype Func_Param is Var_Type;
type Profile_Range is new Integer range 0 .. 4;
type Func_Syntax is array (Profile_Range) of Func_Param;
-- 0 is the type of return value, 1..4 - of params 1..4
type Switch_Node is record
From, To : Switch_Index;
SelectID : Positive;
Synt : Func_Syntax;
end record;
SI_LENGTH : constant Natural := 68;
Switch_Info : array (1 .. SI_LENGTH) of Switch_Node := (
-- CtxRetBool
(Exists, Has_Associations, 10,
(Par_Boolean, Par_Context, Par_Absent, Par_Absent, Par_Absent)),
-- CtxRetCUnitList
(Compilation_Unit_Bodies, Library_Unit_Declarations, 20,
(Par_CUnitList, Par_Context, Par_Absent, Par_Absent, Par_Absent)),
-- CtxRetElemList
(Configuration_Pragmas, Configuration_Pragmas, 30,
(Par_ElemList, Par_Context, Par_Absent, Par_Absent, Par_Absent)),
-- CtxRetNull
(Close, Open, 40,
(Par_Absent, Par_Context, Par_Absent, Par_Absent, Par_Absent)),
-- CtxRetString
(Debug_Image_Ctx, Parameters, 50,
(Par_String, Par_Context, Par_Absent, Par_Absent, Par_Absent)),
-- CtxStringStringRetNull
(Associate, Associate, 60,
(Par_Absent, Par_Context, Par_String, Par_String, Par_Absent)),
-- CUnitBoolRetElemList
(Context_Clause_Elements, Context_Clause_Elements, 70,
(Par_ElemList, Par_CUnit, Par_Boolean, Par_Absent, Par_Absent)),
-- CUnitCtxRetCUnit
(Corresponding_Body_CU_Ctx, Corresponding_Subunit_Parent_Body_Ctx, 80,
(Par_CUnit, Par_CUnit, Par_Context, Par_Absent, Par_Absent)),
-- CUnitCtxRetCUnitList
(Corresponding_Children_Ctx, Subunits_Ctx, 90,
(Par_CUnitList, Par_CUnit, Par_Context, Par_Absent, Par_Absent)),
-- CUnitCUnitRetBool
(Is_Equal_CU, Is_Identical_CU, 93,
(Par_Boolean, Par_CUnit, Par_CUnit, Par_Absent, Par_Absent)),
-- CUnitIntIntRetElem
(Find_Element, Find_Element, 95,
(Par_Element, Par_CUnit, Par_Integer, Par_Integer, Par_Absent)),
-- CUnitListCtxRetRelship
(Elaboration_Order, Elaboration_Order, 97,
(Par_Relationship, Par_CUnitList, Par_Context, Par_Absent, Par_Absent)),
-- CUnitListCUnitListCtxStringRetRelship
(Semantic_Dependence_Order, Semantic_Dependence_Order, 98,
(Par_Relationship, Par_CUnitList, Par_CUnitList, Par_Context, Par_String)
),
-- CUnitListRetBool
(Is_Nil_CUL, Is_Nil_CUL, 100,
(Par_Boolean, Par_CUnitList, Par_Absent, Par_Absent, Par_Absent)),
-- CUnitRetBool
(Can_Be_Main_Program, Is_Nil_CU, 110,
(Par_Boolean, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)),
-- CUnitRetCtx
(Enclosing_Context, Enclosing_Context, 120,
(Par_Context, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)),
-- CUnitRetCUnit
(Corresponding_Body_CU,
Corresponding_Subunit_Parent_Body, 130,
(Par_CUnit, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)),
-- CUnitRetCUnitList
(Corresponding_Children, Subunits, 140,
(Par_CUnitList, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)),
-- CUnitRetElem
(Browse_CU, Unit_Declaration, 150,
(Par_Element, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)),
-- CUnitRetElemList
(Compilation_Pragmas, Compilation_Pragmas, 160,
(Par_ElemList, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)),
-- CUnitRetString
(Compilation_Command_Line_Options, Unique_Name, 180,
(Par_String, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)),
-- CUnitStringRetATime
(Attribute_Time, Attribute_Time, 190,
(Par_ATime, Par_CUnit, Par_String, Par_Absent, Par_Absent)),
-- CUnitStringRetBool
(Has_Attribute, Has_Attribute, 200,
(Par_Boolean, Par_CUnit, Par_String, Par_Absent, Par_Absent)),
-- CUnitStringRetString
(Attribute_Values, Attribute_Values, 210,
(Par_String, Par_CUnit, Par_String, Par_Absent, Par_Absent)),
-- DDA_ArrCRetDDA_ArrC
(DDA_Array_Components_2, DDA_Array_Components_2, 212,
(Par_DDA_Array_Component, Par_DDA_Array_Component, Par_Absent,
Par_Absent, Par_Absent)),
-- DDA_ArrCRetDDA_RecCList
(DDA_Discriminant_Components_2, DDA_Record_Components_2, 214,
(Par_DDA_Record_Component_List, Par_DDA_Array_Component, Par_Absent,
Par_Absent, Par_Absent)),
-- DDA_ArrCRetElem
(DDA_Component_Indication, DDA_Component_Indication, 216,
(Par_Element, Par_DDA_Array_Component, Par_Absent, Par_Absent,
Par_Absent)),
-- DDA_RecCRetDDA_ArrC
(DDA_Array_Components_1, DDA_Array_Components_1, 217,
(Par_DDA_Array_Component, Par_DDA_Record_Component, Par_Absent,
Par_Absent, Par_Absent)),
-- DDA_RecCRetDDA_RecCList
(DDA_Discriminant_Components_1, DDA_Record_Components_1, 218,
(Par_DDA_Record_Component_List, Par_DDA_Record_Component, Par_Absent,
Par_Absent, Par_Absent)),
-- DDA_RecCRetElem
(DDA_Component_Declaration, DDA_Component_Declaration, 219,
(Par_Element, Par_DDA_Record_Component, Par_Absent, Par_Absent,
Par_Absent)),
-- ElemBoolRetElemList
(Accept_Body_Exception_Handlers, Visible_Part_Items, 220,
(Par_ElemList, Par_Element, Par_Boolean, Par_Absent, Par_Absent)),
-- ElemCtxRetElem
(Corresponding_Body, Corresponding_Type_Declaration_Ctx, 230,
(Par_Element, Par_Element, Par_Context, Par_Absent, Par_Absent)),
-- ElemElemBoolRetBool
(Is_Referenced, Is_Referenced, 240,
(Par_Boolean, Par_Element, Par_Element, Par_Boolean, Par_Absent)),
-- ElemElemBoolRetElemList
(References, References, 250,
(Par_ElemList, Par_Element, Par_Element, Par_Boolean, Par_Absent)),
-- ElemElemRetBool
(Is_Equal, Is_Identical, 255,
(Par_Boolean, Par_Element, Par_Element, Par_Absent, Par_Absent)),
-- ElemElemRetElem
(Enclosing_Element_EEE, Enclosing_Element_EEE, 260,
(Par_Element, Par_Element, Par_Element, Par_Absent, Par_Absent)),
-- ElemIntIntRetLineList
(Lines_2, Lines_2, 265,
(Par_Line_List, Par_Element, Par_Integer, Par_Integer, Par_Absent)),
-- ElemListRetBool
(Is_Nil_EL, Is_Nil_EL, 270,
(Par_Boolean, Par_ElemList, Par_Absent, Par_Absent, Par_Absent)),
-- ElemRetBool
(Declarations_Is_Private_Present, Is_Text_Available, 280,
(Par_Boolean, Par_Element, Par_Absent, Par_Absent, Par_Absent)),
-- ElemRetCUnit
(Enclosing_Compilation_Unit, Enclosing_Compilation_Unit, 290,
(Par_CUnit, Par_Element, Par_Absent, Par_Absent, Par_Absent)),
-- ElemRetDDA_ArrC
(DDA_Array_Components, DDA_Array_Components, 293,
(Par_DDA_Array_Component, Par_Element, Par_Absent, Par_Absent,
Par_Absent)),
-- ElemRetDDA_RecCList
(DDA_Discriminant_Components, DDA_Record_Components, 295,
(Par_DDA_Record_Component_List, Par_Element, Par_Absent, Par_Absent,
Par_Absent)),
-- ElemRetElem
(Accept_Entry_Direct_Name, While_Condition, 300,
(Par_Element, Par_Element, Par_Absent, Par_Absent, Par_Absent)),
-- ElemRetElemList
(Aborted_Tasks, Variant_Choices, 310,
(Par_ElemList, Par_Element, Par_Absent, Par_Absent, Par_Absent)),
-- ElemRetInt
(First_Line_Number, Last_Line_Number, 320,
(Par_Integer, Par_Element, Par_Absent, Par_Absent, Par_Absent)),
-- ElemRetLineList
(Lines, Lines, 325,
(Par_Line_List, Par_Element, Par_Absent, Par_Absent, Par_Absent)),
-- ElemRetSpan
(Compilation_Span, Element_Span, 330,
(Par_Span, Par_Element, Par_Absent, Par_Absent, Par_Absent)),
-- ElemRetString
(Access_Type_Kind, Value_Image, 340,
(Par_String, Par_Element, Par_Absent, Par_Absent, Par_Absent)),
-- ElemSpanRetLineList
(Lines_1, Lines_1, 342,
(Par_Line_List, Par_Element, Par_Span, Par_Absent, Par_Absent)),
-- IntIntRetBool
(Eq, Lt, 343,
(Par_Boolean, Par_Integer, Par_Integer, Par_Absent, Par_Absent)),
-- IntIntRetInt
(Add, Sub, 346,
(Par_Integer, Par_Integer, Par_Integer, Par_Absent, Par_Absent)),
-- LineRetString
(Comment_Image, Non_Comment_Image, 347,
(Par_String, Par_Line, Par_Absent, Par_Absent, Par_Absent)),
-- RelshipRetCUnitList
(Consistent, Circular, 348,
(Par_CUnitList, Par_Relationship, Par_Absent, Par_Absent, Par_Absent)),
-- RetBool
(Attributes_Are_Supported, Record_Component_Associations_Normalized, 350,
(Par_Boolean, Par_Absent, Par_Absent, Par_Absent, Par_Absent)),
-- RetCUnit
(Nil_Compilation_Unit, Nil_Compilation_Unit, 360,
(Par_CUnit, Par_Absent, Par_Absent, Par_Absent, Par_Absent)),
-- RetCUnitList
(Nil_Compilation_Unit_List, Nil_Compilation_Unit_List, 370,
(Par_CUnitList, Par_Absent, Par_Absent, Par_Absent, Par_Absent)),
-- RetElem
(Nil_Element, Nil_Element, 380,
(Par_Element, Par_Absent, Par_Absent, Par_Absent, Par_Absent)),
-- RetElemList
(Nil_Element_List, Nil_Element_List, 390,
(Par_ElemList, Par_Absent, Par_Absent, Par_Absent, Par_Absent)),
-- RetLine
(Nil_Line, Nil_Line, 400,
(Par_Line, Par_Absent, Par_Absent, Par_Absent, Par_Absent)),
-- RetRelship
(Nil_Relationship, Nil_Relationship, 405,
(Par_Relationship, Par_Absent, Par_Absent, Par_Absent, Par_Absent)),
-- RetSpan
(Nil_Span, Nil_Span, 410,
(Par_Span, Par_Absent, Par_Absent, Par_Absent, Par_Absent)),
-- RetString
(Asis_Implementor, Status, 420,
(Par_String, Par_Absent, Par_Absent, Par_Absent, Par_Absent)),
-- SpanRetBool
(Is_Nil_Sp, Is_Nil_Sp, 430,
(Par_Boolean, Par_Span, Par_Absent, Par_Absent, Par_Absent)),
-- SpanRetInt
(First_Column, Last_Line, 435,
(Par_Integer, Par_Span, Par_Absent, Par_Absent, Par_Absent)),
-- StringCtxRetCUnit
(Compilation_Unit_Body, Library_Unit_Declaration, 440,
(Par_CUnit, Par_String, Par_Context, Par_Absent, Par_Absent)),
-- StringRetNull
(Finalize, Initialize, 450,
(Par_Absent, Par_String, Par_Absent, Par_Absent, Par_Absent)),
-- StringStringRetBool
(Eq_SS, Lt_SS, 460,
(Par_Boolean, Par_String, Par_String, Par_Absent, Par_Absent)),
-- StringStringRetString
(Concat, Concat, 470,
(Par_String, Par_String, Par_String, Par_Absent, Par_Absent))
);
end ASIStant.FuncEnum;
syntax highlighted by Code2HTML, v. 0.9.1