------------------------------------- ------------------------------------------- -- -- -- OCARINA COMPONENTS -- -- -- -- O C A R I N A . B U I L D E R . P R O P E R T I E S -- -- -- -- S p e c -- -- -- -- Copyright (C) 2005-2006, GET-Telecom Paris. -- -- -- -- Ocarina 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. Ocarina is distributed in the hope that it will be -- -- useful, but WITHOUT ANY WARRANTY; without even the implied warranty of -- -- MERCHANTABILITY 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 Ocarina; see file COPYING. -- -- If not, write to the Free Software Foundation, 51 Franklin Street, Fifth -- -- Floor, Boston, MA 02111-1301, USA. -- -- -- -- As a special exception, if other files instantiate generics from this -- -- unit, or you link this unit with other files to produce an executable, -- -- this unit does not by itself cause the resulting executable to be -- -- covered by the GNU General Public License. This exception does not -- -- however invalidate any other reasons why the executable file might be -- -- covered by the GNU Public License. -- -- -- -- Ocarina is maintained by the Ocarina team -- -- (ocarina-users@listes.enst.fr) -- -- -- ------------------------------------------------------------------------------ with Types; use Types; with Locations; use Locations; package Ocarina.Builder.Properties is function Add_New_Property_Set (Loc : location; Name : node_id; Namespace : node_id) return node_id; function Add_New_Property_Constant_Declaration (Loc : location; Name : node_id; Property_Set : node_id; Constant_Type : node_id; Unit_Identifier : node_id; Single_Value : node_id; Multiple_Values : list_id) return node_id; -- Either Single_Value /= No_Node and Mulitple_Values = No_Node, -- then we have a single valued constant; or Single_Value = -- No_Node, then we have a muli valued constant function Add_New_Property_Type_Declaration (Loc : location; Name : node_id; Property_Set : node_id; Type_Designator : node_id) return node_id; function Add_New_Property_Name_Declaration (Loc : location; Name : node_id; Property_Set : node_id; Is_Inherit : Boolean; Is_Access : Boolean; Single_Default_Value : node_id; Multiple_Default_Value : list_id; Property_Name_Type : node_id; Property_Type_Is_A_List : Boolean; Applies_To_All : Boolean; Applies_To : list_id) return node_id; -- Either Applies_To_All is set to True and Applies_To is empty, -- or Applies_To_All is False and Applies_To is not empty function Add_New_Property_Association (Loc : location; Name : node_id; Property_Name : node_id; Container : node_id; In_Binding : node_id; In_Modes : node_id; Property_Value : node_id; Is_Constant : Boolean; Is_Access : Boolean; Is_Additive : Boolean; Applies_To : list_id; Check_For_Conflicts : Boolean := False; Override : Boolean := False) return node_id; -- If Check_For_Conflicts is set to True, then the function checks -- whether there is a property association of that name -- already. If override is set to True and there is a conflict, -- then it is overridden by the new association. Else the new -- association is ignored. If Check_For_Conflicts is set to False, -- then the value of Override is ignored. end Ocarina.Builder.Properties;