------------------------------------------------------------------------------ -- -- -- ASIS Tester And iNTerpreter (ASIStant) COMPONENTS -- -- -- -- A S I S T A N T . A M B I G U O U S _ M A P P I N G -- -- -- -- 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; with ASIStant.FuncEnum; use ASIStant.FuncEnum; package ASIStant.Ambiguous_Mapping is ------------------------------------------------------------------------------ -- Mapping of ambigious ASIS queries ------------------------------------------------------------------------------ type Amb_Index is ( Browse, Corresponding_Body, Corresponding_Body_Stub, Corresponding_Children, Corresponding_Declaration, Corresponding_Parent_Declaration, Corresponding_Subunit, Corresponding_Subunit_Parent_Body, Corresponding_Type_Declaration, DDA_Array_Components, DDA_Record_Components, Debug_Image, Enclosing_Element, Eq, Exists, Is_Equal, Is_Identical, Is_Nil, Lines, Subunits ); -- All supported functions type Amb_Node is record New_Index : Switch_Index; Synt : Func_Syntax; end record; AI_LENGTH : constant Natural := 5; Amb_Info : array (Amb_Index, 1 .. AI_LENGTH) of Amb_Node := ( ( (Browse, (Par_Element, Par_Element, Par_Absent, Par_Absent, Par_Absent)), (Browse_CU, (Par_Element, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Corresponding_Body_CU_Ctx, (Par_CUnit, Par_CUnit, Par_Context, Par_Absent, Par_Absent)), (Corresponding_Body_CU, (Par_CUnit, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)), (Corresponding_Body_Ctx, (Par_Element, Par_Element, Par_Context, Par_Absent, Par_Absent)), (Corresponding_Body, (Par_Element, Par_Element, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Corresponding_Body_Stub_Ctx, (Par_Element, Par_Element, Par_Context, Par_Absent, Par_Absent)), (Corresponding_Body_Stub, (Par_Element, Par_Element, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Corresponding_Children_Ctx, (Par_CUnitList, Par_CUnit, Par_Context, Par_Absent, Par_Absent)), (Corresponding_Children, (Par_CUnitList, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Corresponding_Declaration_CU_Ctx, (Par_CUnit, Par_CUnit, Par_Context, Par_Absent, Par_Absent)), (Corresponding_Declaration_CU, (Par_CUnit, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)), (Corresponding_Declaration_Ctx, (Par_Element, Par_Element, Par_Context, Par_Absent, Par_Absent)), (Corresponding_Declaration, (Par_Element, Par_Element, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Corresponding_Parent_Declaration_Ctx, (Par_CUnit, Par_CUnit, Par_Context, Par_Absent, Par_Absent)), (Corresponding_Parent_Declaration, (Par_CUnit, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Corresponding_Subunit_Ctx, (Par_Element, Par_Element, Par_Context, Par_Absent, Par_Absent)), (Corresponding_Subunit, (Par_Element, Par_Element, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Corresponding_Subunit_Parent_Body_Ctx, (Par_CUnit, Par_CUnit, Par_Context, Par_Absent, Par_Absent)), (Corresponding_Subunit_Parent_Body, (Par_CUnit, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Corresponding_Type_Declaration_Ctx, (Par_Element, Par_Element, Par_Context, Par_Absent, Par_Absent)), (Corresponding_Type_Declaration, (Par_Element, Par_Element, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (DDA_Array_Components, (Par_DDA_Array_Component, Par_Element, Par_Absent, Par_Absent, Par_Absent)), (DDA_Array_Components_1, (Par_DDA_Array_Component, Par_DDA_Record_Component, Par_Absent, Par_Absent, Par_Absent)), (DDA_Array_Components_2, (Par_DDA_Array_Component, Par_DDA_Array_Component, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (DDA_Record_Components, (Par_DDA_Record_Component_List, Par_Element, Par_Absent, Par_Absent, Par_Absent)), (DDA_Record_Components_1, (Par_DDA_Record_Component_List, Par_DDA_Record_Component, Par_Absent, Par_Absent, Par_Absent)), (DDA_Record_Components_2, (Par_DDA_Record_Component_List, Par_DDA_Record_Component, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Debug_Image_Ctx, (Par_String, Par_Context, Par_Absent, Par_Absent, Par_Absent)), (Debug_Image_CU, (Par_String, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)), (Debug_Image, (Par_String, Par_Element, Par_Absent, Par_Absent, Par_Absent)), (Debug_Image, (Par_String, Par_Line, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Enclosing_Element_EEE, (Par_Element, Par_Element, Par_Element, Par_Absent, Par_Absent)), (Enclosing_Element, (Par_Element, Par_Element, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Eq, (Par_Boolean, Par_Integer, Par_Integer, Par_Absent, Par_Absent)), (Eq_SS, (Par_Boolean, Par_String, Par_String, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Exists, (Par_Boolean, Par_Context, Par_Absent, Par_Absent, Par_Absent)), (Exists_CU, (Par_Boolean, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Is_Equal_CU, (Par_Boolean, Par_CUnit, Par_CUnit, Par_Absent, Par_Absent)), (Is_Equal, (Par_Boolean, Par_Element, Par_Element, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Is_Identical_CU, (Par_Boolean, Par_CUnit, Par_CUnit, Par_Absent, Par_Absent)), (Is_Identical, (Par_Boolean, Par_Element, Par_Element, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Is_Nil_CUL, (Par_Boolean, Par_CUnitList, Par_Absent, Par_Absent, Par_Absent)), (Is_Nil_CU, (Par_Boolean, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)), (Is_Nil_EL, (Par_Boolean, Par_ElemList, Par_Absent, Par_Absent, Par_Absent)), (Is_Nil, (Par_Boolean, Par_Element, Par_Absent, Par_Absent, Par_Absent)), (Is_Nil_Sp, (Par_Boolean, Par_Span, Par_Absent, Par_Absent, Par_Absent)) ), ( (Lines, (Par_Line_List, Par_Element, Par_Absent, Par_Absent, Par_Absent)), (Lines_1, (Par_Line_List, Par_Element, Par_Span, Par_Absent, Par_Absent)), (Lines_2, (Par_Line_List, Par_Element, Par_Integer, Par_Integer, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ), ( (Subunits_Ctx, (Par_CUnitList, Par_CUnit, Par_Context, Par_Absent, Par_Absent)), (Subunits, (Par_CUnitList, Par_CUnit, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)), (Invalid_Index, (Par_Absent, Par_Absent, Par_Absent, Par_Absent, Par_Absent)) ) ); end ASIStant.Ambiguous_Mapping;