------------------------------------------------ -------------------------------- -- -- -- OCARINA COMPONENTS -- -- -- -- G A I A . P R O C E S S O R . N O D E S -- -- -- -- B o d y -- -- -- -- Copyright (C) 2007, 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) -- -- -- ------------------------------------------------------------------------------ pragma style_checks ("NM32766"); -- This file has been generated automatically by `mknodes'. Do not -- hand modify this file since your changes will be overridden. with Gaia.Processor.Debug; use Gaia.Processor.Debug; package body Gaia.Processor.Nodes is pragma warnings (Off); use Entries; function Kind (N : node_id) return node_kind is begin return Table (node_id (N)).Kind; end Kind; procedure Set_Kind (N : node_id; V : node_kind) is begin Table (node_id (N)).Kind := V; end Set_Kind; function Loc (N : node_id) return location is begin return Table (node_id (N)).Loc; end Loc; procedure Set_Loc (N : node_id; V : location) is begin Table (node_id (N)).Loc := V; end Set_Loc; function Next_Node (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_node_id or else Table (node_id (N)).Kind = k_identifier or else Table (node_id (N)).Kind = k_gaia_definition or else Table (node_id (N)).Kind = k_scoped_name or else Table (node_id (N)).Kind = k_property or else Table (node_id (N)).Kind = k_gaia_scope_definition or else Table (node_id (N)).Kind = k_package_name_element or else Table (node_id (N)).Kind = k_root_node or else Table (node_id (N)).Kind = k_distributed_application or else Table (node_id (N)).Kind = k_namespace or else Table (node_id (N)).Kind = k_call_sequence or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_process or else Table (node_id (N)).Kind = k_parameter or else Table (node_id (N)).Kind = k_parameter_connection or else Table (node_id (N)).Kind = k_thread_reference or else Table (node_id (N)).Kind = k_port or else Table (node_id (N)).Kind = k_destination_port or else Table (node_id (N)).Kind = k_variable_definition or else Table (node_id (N)).Kind = k_subprogram_call or else Table (node_id (N)).Kind = k_subprogram_reference or else Table (node_id (N)).Kind = k_symbolic_value or else Table (node_id (N)).Kind = k_type_definition); return node_id (Table (node_id (N)).L (4)); end Next_Node; procedure Set_Next_Node (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_node_id or else Table (node_id (N)).Kind = k_identifier or else Table (node_id (N)).Kind = k_gaia_definition or else Table (node_id (N)).Kind = k_scoped_name or else Table (node_id (N)).Kind = k_property or else Table (node_id (N)).Kind = k_gaia_scope_definition or else Table (node_id (N)).Kind = k_package_name_element or else Table (node_id (N)).Kind = k_root_node or else Table (node_id (N)).Kind = k_distributed_application or else Table (node_id (N)).Kind = k_namespace or else Table (node_id (N)).Kind = k_call_sequence or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_process or else Table (node_id (N)).Kind = k_parameter or else Table (node_id (N)).Kind = k_parameter_connection or else Table (node_id (N)).Kind = k_thread_reference or else Table (node_id (N)).Kind = k_port or else Table (node_id (N)).Kind = k_destination_port or else Table (node_id (N)).Kind = k_variable_definition or else Table (node_id (N)).Kind = k_subprogram_call or else Table (node_id (N)).Kind = k_subprogram_reference or else Table (node_id (N)).Kind = k_symbolic_value or else Table (node_id (N)).Kind = k_type_definition); Table (node_id (N)).L (4) := int (V); end Set_Next_Node; function First_Node (N : list_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_list_id or else Table (node_id (N)).Kind = k_declaration_list); return node_id (Table (node_id (N)).L (1)); end First_Node; procedure Set_First_Node (N : list_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_list_id or else Table (node_id (N)).Kind = k_declaration_list); Table (node_id (N)).L (1) := int (V); end Set_First_Node; function Last_Node (N : list_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_list_id or else Table (node_id (N)).Kind = k_declaration_list); return node_id (Table (node_id (N)).L (2)); end Last_Node; procedure Set_Last_Node (N : list_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_list_id or else Table (node_id (N)).Kind = k_declaration_list); Table (node_id (N)).L (2) := int (V); end Set_Last_Node; function Name (N : node_id) return name_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_identifier); return name_id (Table (node_id (N)).L (1)); end Name; procedure Set_Name (N : node_id; V : name_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_identifier); Table (node_id (N)).L (1) := int (V); end Set_Name; function Backend_Node (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_identifier); return node_id (Table (node_id (N)).L (2)); end Backend_Node; procedure Set_Backend_Node (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_identifier); Table (node_id (N)).L (2) := int (V); end Set_Backend_Node; function Corresponding_Entity (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_identifier); return node_id (Table (node_id (N)).L (3)); end Corresponding_Entity; procedure Set_Corresponding_Entity (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_identifier); Table (node_id (N)).L (3) := int (V); end Set_Corresponding_Entity; function Identifier (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_gaia_definition or else Table (node_id (N)).Kind = k_scoped_name or else Table (node_id (N)).Kind = k_gaia_scope_definition or else Table (node_id (N)).Kind = k_package_name_element or else Table (node_id (N)).Kind = k_root_node or else Table (node_id (N)).Kind = k_distributed_application or else Table (node_id (N)).Kind = k_namespace or else Table (node_id (N)).Kind = k_call_sequence or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_process or else Table (node_id (N)).Kind = k_parameter or else Table (node_id (N)).Kind = k_parameter_connection or else Table (node_id (N)).Kind = k_thread_reference or else Table (node_id (N)).Kind = k_port or else Table (node_id (N)).Kind = k_destination_port or else Table (node_id (N)).Kind = k_variable_definition or else Table (node_id (N)).Kind = k_subprogram_call or else Table (node_id (N)).Kind = k_subprogram_reference or else Table (node_id (N)).Kind = k_type_definition); return node_id (Table (node_id (N)).L (5)); end Identifier; procedure Set_Identifier (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_gaia_definition or else Table (node_id (N)).Kind = k_scoped_name or else Table (node_id (N)).Kind = k_gaia_scope_definition or else Table (node_id (N)).Kind = k_package_name_element or else Table (node_id (N)).Kind = k_root_node or else Table (node_id (N)).Kind = k_distributed_application or else Table (node_id (N)).Kind = k_namespace or else Table (node_id (N)).Kind = k_call_sequence or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_process or else Table (node_id (N)).Kind = k_parameter or else Table (node_id (N)).Kind = k_parameter_connection or else Table (node_id (N)).Kind = k_thread_reference or else Table (node_id (N)).Kind = k_port or else Table (node_id (N)).Kind = k_destination_port or else Table (node_id (N)).Kind = k_variable_definition or else Table (node_id (N)).Kind = k_subprogram_call or else Table (node_id (N)).Kind = k_subprogram_reference or else Table (node_id (N)).Kind = k_type_definition); Table (node_id (N)).L (5) := int (V); end Set_Identifier; function Parent_Scoped_Name (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_scoped_name); return node_id (Table (node_id (N)).L (1)); end Parent_Scoped_Name; procedure Set_Parent_Scoped_Name (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_scoped_name); Table (node_id (N)).L (1) := int (V); end Set_Parent_Scoped_Name; function Reference (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_scoped_name); return node_id (Table (node_id (N)).L (2)); end Reference; procedure Set_Reference (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_scoped_name); Table (node_id (N)).L (2) := int (V); end Set_Reference; function Entity (N : node_id) return name_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_property); return name_id (Table (node_id (N)).L (1)); end Entity; procedure Set_Entity (N : node_id; V : name_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_property); Table (node_id (N)).L (1) := int (V); end Set_Entity; function Value (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_property); return node_id (Table (node_id (N)).L (2)); end Value; procedure Set_Value (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_property); Table (node_id (N)).L (2) := int (V); end Set_Value; function Scoped_Name (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_gaia_scope_definition or else Table (node_id (N)).Kind = k_root_node or else Table (node_id (N)).Kind = k_namespace or else Table (node_id (N)).Kind = k_call_sequence or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_process or else Table (node_id (N)).Kind = k_parameter or else Table (node_id (N)).Kind = k_parameter_connection or else Table (node_id (N)).Kind = k_port or else Table (node_id (N)).Kind = k_variable_definition or else Table (node_id (N)).Kind = k_subprogram_call or else Table (node_id (N)).Kind = k_type_definition); return node_id (Table (node_id (N)).L (6)); end Scoped_Name; procedure Set_Scoped_Name (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_gaia_scope_definition or else Table (node_id (N)).Kind = k_root_node or else Table (node_id (N)).Kind = k_namespace or else Table (node_id (N)).Kind = k_call_sequence or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_process or else Table (node_id (N)).Kind = k_parameter or else Table (node_id (N)).Kind = k_parameter_connection or else Table (node_id (N)).Kind = k_port or else Table (node_id (N)).Kind = k_variable_definition or else Table (node_id (N)).Kind = k_subprogram_call or else Table (node_id (N)).Kind = k_type_definition); Table (node_id (N)).L (6) := int (V); end Set_Scoped_Name; function Properties (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_gaia_scope_definition or else Table (node_id (N)).Kind = k_root_node or else Table (node_id (N)).Kind = k_namespace or else Table (node_id (N)).Kind = k_call_sequence or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_process or else Table (node_id (N)).Kind = k_parameter or else Table (node_id (N)).Kind = k_parameter_connection or else Table (node_id (N)).Kind = k_port or else Table (node_id (N)).Kind = k_variable_definition or else Table (node_id (N)).Kind = k_subprogram_call or else Table (node_id (N)).Kind = k_type_definition); return list_id (Table (node_id (N)).L (7)); end Properties; procedure Set_Properties (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_gaia_scope_definition or else Table (node_id (N)).Kind = k_root_node or else Table (node_id (N)).Kind = k_namespace or else Table (node_id (N)).Kind = k_call_sequence or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_process or else Table (node_id (N)).Kind = k_parameter or else Table (node_id (N)).Kind = k_parameter_connection or else Table (node_id (N)).Kind = k_port or else Table (node_id (N)).Kind = k_variable_definition or else Table (node_id (N)).Kind = k_subprogram_call or else Table (node_id (N)).Kind = k_type_definition); Table (node_id (N)).L (7) := int (V); end Set_Properties; function Namespaces (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_root_node); return list_id (Table (node_id (N)).L (2)); end Namespaces; procedure Set_Namespaces (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_root_node); Table (node_id (N)).L (2) := int (V); end Set_Namespaces; function Node_Location (N : node_id) return name_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_root_node); return name_id (Table (node_id (N)).L (3)); end Node_Location; procedure Set_Node_Location (N : node_id; V : name_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_root_node); Table (node_id (N)).L (3) := int (V); end Set_Node_Location; function Port_Number (N : node_id) return value_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_root_node or else Table (node_id (N)).Kind = k_destination_port); return value_id (Table (node_id (N)).L (8)); end Port_Number; procedure Set_Port_Number (N : node_id; V : value_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_root_node or else Table (node_id (N)).Kind = k_destination_port); Table (node_id (N)).L (8) := int (V); end Set_Port_Number; function Thread_Number (N : node_id) return int is begin pragma assert (False or else Table (node_id (N)).Kind = k_root_node); return int (Table (node_id (N)).L (9)); end Thread_Number; procedure Set_Thread_Number (N : node_id; V : int) is begin pragma assert (False or else Table (node_id (N)).Kind = k_root_node); Table (node_id (N)).L (9) := int (V); end Set_Thread_Number; function Priority_Managed (N : node_id) return Boolean is begin pragma assert (False or else Table (node_id (N)).Kind = k_root_node); return Boolean (Table (node_id (N)).B (1)); end Priority_Managed; procedure Set_Priority_Managed (N : node_id; V : Boolean) is begin pragma assert (False or else Table (node_id (N)).Kind = k_root_node); Table (node_id (N)).B (1) := Boolean (V); end Set_Priority_Managed; function Root_Nodes (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_distributed_application); return list_id (Table (node_id (N)).L (1)); end Root_Nodes; procedure Set_Root_Nodes (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_distributed_application); Table (node_id (N)).L (1) := int (V); end Set_Root_Nodes; function Protocol (N : node_id) return name_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_distributed_application); return name_id (Table (node_id (N)).L (2)); end Protocol; procedure Set_Protocol (N : node_id; V : name_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_distributed_application); Table (node_id (N)).L (2) := int (V); end Set_Protocol; function Public_Declarations (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_namespace); return list_id (Table (node_id (N)).L (1)); end Public_Declarations; procedure Set_Public_Declarations (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_namespace); Table (node_id (N)).L (1) := int (V); end Set_Public_Declarations; function Private_Declarations (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_namespace); return list_id (Table (node_id (N)).L (2)); end Private_Declarations; procedure Set_Private_Declarations (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_namespace); Table (node_id (N)).L (2) := int (V); end Set_Private_Declarations; function Statements (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_call_sequence); return list_id (Table (node_id (N)).L (1)); end Statements; procedure Set_Statements (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_call_sequence); Table (node_id (N)).L (1) := int (V); end Set_Statements; function Variables (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_process); return list_id (Table (node_id (N)).L (2)); end Variables; procedure Set_Variables (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_process); Table (node_id (N)).L (2) := int (V); end Set_Variables; function Parameters (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_subprogram_call); return list_id (Table (node_id (N)).L (1)); end Parameters; procedure Set_Parameters (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_subprogram_call); Table (node_id (N)).L (1) := int (V); end Set_Parameters; function Implemented_By (N : node_id) return name_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram); return name_id (Table (node_id (N)).L (3)); end Implemented_By; procedure Set_Implemented_By (N : node_id; V : name_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram); Table (node_id (N)).L (3) := int (V); end Set_Implemented_By; function Implementation_Language (N : node_id) return name_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram); return name_id (Table (node_id (N)).L (8)); end Implementation_Language; procedure Set_Implementation_Language (N : node_id; V : name_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram); Table (node_id (N)).L (8) := int (V); end Set_Implementation_Language; function Call_Sequences (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_thread); return list_id (Table (node_id (N)).L (9)); end Call_Sequences; procedure Set_Call_Sequences (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_thread); Table (node_id (N)).L (9) := int (V); end Set_Call_Sequences; function Connections (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_process); return list_id (Table (node_id (N)).L (10)); end Connections; procedure Set_Connections (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_process); Table (node_id (N)).L (10) := int (V); end Set_Connections; function Owner_Data (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram); return node_id (Table (node_id (N)).L (11)); end Owner_Data; procedure Set_Owner_Data (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram); Table (node_id (N)).L (11) := int (V); end Set_Owner_Data; function Ports (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_process); return list_id (Table (node_id (N)).L (3)); end Ports; procedure Set_Ports (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_process); Table (node_id (N)).L (3) := int (V); end Set_Ports; function Period (N : node_id) return value_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread); return value_id (Table (node_id (N)).L (8)); end Period; procedure Set_Period (N : node_id; V : value_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread); Table (node_id (N)).L (8) := int (V); end Set_Period; function Priority (N : node_id) return value_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread); return value_id (Table (node_id (N)).L (11)); end Priority; procedure Set_Priority (N : node_id; V : value_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread); Table (node_id (N)).L (11) := int (V); end Set_Priority; function Storage_Size (N : node_id) return value_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread); return value_id (Table (node_id (N)).L (12)); end Storage_Size; procedure Set_Storage_Size (N : node_id; V : value_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread); Table (node_id (N)).L (12) := int (V); end Set_Storage_Size; function Access_Provided_By (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_variable_definition or else Table (node_id (N)).Kind = k_subprogram_call); return node_id (Table (node_id (N)).L (13)); end Access_Provided_By; procedure Set_Access_Provided_By (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread or else Table (node_id (N)).Kind = k_variable_definition or else Table (node_id (N)).Kind = k_subprogram_call); Table (node_id (N)).L (13) := int (V); end Set_Access_Provided_By; function Unique (N : node_id) return Boolean is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread); return Boolean (Table (node_id (N)).B (1)); end Unique; procedure Set_Unique (N : node_id; V : Boolean) is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread); Table (node_id (N)).B (1) := Boolean (V); end Set_Unique; function Sources_Number (N : node_id) return int is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread); return int (Table (node_id (N)).L (14)); end Sources_Number; procedure Set_Sources_Number (N : node_id; V : int) is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread); Table (node_id (N)).L (14) := int (V); end Set_Sources_Number; function Threads (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_process); return list_id (Table (node_id (N)).L (1)); end Threads; procedure Set_Threads (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_process); Table (node_id (N)).L (1) := int (V); end Set_Threads; function Is_In (N : node_id) return Boolean is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter or else Table (node_id (N)).Kind = k_port); return Boolean (Table (node_id (N)).B (1)); end Is_In; procedure Set_Is_In (N : node_id; V : Boolean) is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter or else Table (node_id (N)).Kind = k_port); Table (node_id (N)).B (1) := Boolean (V); end Set_Is_In; function Is_Out (N : node_id) return Boolean is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter or else Table (node_id (N)).Kind = k_port); return Boolean (Table (node_id (N)).B (2)); end Is_Out; procedure Set_Is_Out (N : node_id; V : Boolean) is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter or else Table (node_id (N)).Kind = k_port); Table (node_id (N)).B (2) := Boolean (V); end Set_Is_Out; function Type_Spec (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter or else Table (node_id (N)).Kind = k_port or else Table (node_id (N)).Kind = k_variable_definition); return node_id (Table (node_id (N)).L (8)); end Type_Spec; procedure Set_Type_Spec (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter or else Table (node_id (N)).Kind = k_port or else Table (node_id (N)).Kind = k_variable_definition); Table (node_id (N)).L (8) := int (V); end Set_Type_Spec; function Source (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter_connection); return node_id (Table (node_id (N)).L (1)); end Source; procedure Set_Source (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter_connection); Table (node_id (N)).L (1) := int (V); end Set_Source; function Simple_Source (N : node_id) return name_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter_connection); return name_id (Table (node_id (N)).L (2)); end Simple_Source; procedure Set_Simple_Source (N : node_id; V : name_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter_connection); Table (node_id (N)).L (2) := int (V); end Set_Simple_Source; function Destination (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter_connection); return node_id (Table (node_id (N)).L (3)); end Destination; procedure Set_Destination (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter_connection); Table (node_id (N)).L (3) := int (V); end Set_Destination; function Simple_Destination (N : node_id) return name_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter_connection); return name_id (Table (node_id (N)).L (8)); end Simple_Destination; procedure Set_Simple_Destination (N : node_id; V : name_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter_connection); Table (node_id (N)).L (8) := int (V); end Set_Simple_Destination; function Source_Subprogram_Call (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter_connection); return node_id (Table (node_id (N)).L (9)); end Source_Subprogram_Call; procedure Set_Source_Subprogram_Call (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter_connection); Table (node_id (N)).L (9) := int (V); end Set_Source_Subprogram_Call; function Destination_Subprogram_Call (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter_connection); return node_id (Table (node_id (N)).L (10)); end Destination_Subprogram_Call; procedure Set_Destination_Subprogram_Call (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_parameter_connection); Table (node_id (N)).L (10) := int (V); end Set_Destination_Subprogram_Call; function Corresponding_Thread (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread_reference); return node_id (Table (node_id (N)).L (1)); end Corresponding_Thread; procedure Set_Corresponding_Thread (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_thread_reference); Table (node_id (N)).L (1) := int (V); end Set_Corresponding_Thread; function Fifo_Size (N : node_id) return value_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_port); return value_id (Table (node_id (N)).L (9)); end Fifo_Size; procedure Set_Fifo_Size (N : node_id; V : value_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_port); Table (node_id (N)).L (9) := int (V); end Set_Fifo_Size; function Trigger (N : node_id) return Boolean is begin pragma assert (False or else Table (node_id (N)).Kind = k_port); return Boolean (Table (node_id (N)).B (3)); end Trigger; procedure Set_Trigger (N : node_id; V : Boolean) is begin pragma assert (False or else Table (node_id (N)).Kind = k_port); Table (node_id (N)).B (3) := Boolean (V); end Set_Trigger; function Destinations (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_port); return list_id (Table (node_id (N)).L (10)); end Destinations; procedure Set_Destinations (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_port); Table (node_id (N)).L (10) := int (V); end Set_Destinations; function Frontend_Node (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_destination_port or else Table (node_id (N)).Kind = k_type_definition); return node_id (Table (node_id (N)).L (2)); end Frontend_Node; procedure Set_Frontend_Node (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_destination_port or else Table (node_id (N)).Kind = k_type_definition); Table (node_id (N)).L (2) := int (V); end Set_Frontend_Node; function Thread_Location (N : node_id) return name_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_destination_port); return name_id (Table (node_id (N)).L (1)); end Thread_Location; procedure Set_Thread_Location (N : node_id; V : name_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_destination_port); Table (node_id (N)).L (1) := int (V); end Set_Thread_Location; function Thread_Name (N : node_id) return name_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_destination_port); return name_id (Table (node_id (N)).L (3)); end Thread_Name; procedure Set_Thread_Name (N : node_id; V : name_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_destination_port); Table (node_id (N)).L (3) := int (V); end Set_Thread_Name; function Process_Name (N : node_id) return name_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_destination_port); return name_id (Table (node_id (N)).L (6)); end Process_Name; procedure Set_Process_Name (N : node_id; V : name_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_destination_port); Table (node_id (N)).L (6) := int (V); end Set_Process_Name; function Call_Name (N : node_id) return name_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram_call); return name_id (Table (node_id (N)).L (2)); end Call_Name; procedure Set_Call_Name (N : node_id; V : name_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram_call); Table (node_id (N)).L (2) := int (V); end Set_Call_Name; function Corresponding_Subprogram (N : node_id) return node_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram_call or else Table (node_id (N)).Kind = k_subprogram_reference); return node_id (Table (node_id (N)).L (3)); end Corresponding_Subprogram; procedure Set_Corresponding_Subprogram (N : node_id; V : node_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_subprogram_call or else Table (node_id (N)).Kind = k_subprogram_reference); Table (node_id (N)).L (3) := int (V); end Set_Corresponding_Subprogram; function Value_Name (N : node_id) return value_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_symbolic_value); return value_id (Table (node_id (N)).L (1)); end Value_Name; procedure Set_Value_Name (N : node_id; V : value_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_symbolic_value); Table (node_id (N)).L (1) := int (V); end Set_Value_Name; function Subtypes (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_type_definition); return list_id (Table (node_id (N)).L (3)); end Subtypes; procedure Set_Subtypes (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_type_definition); Table (node_id (N)).L (3) := int (V); end Set_Subtypes; function Predefined_Simple_Type (N : node_id) return byte is begin pragma assert (False or else Table (node_id (N)).Kind = k_type_definition); return byte (Table (node_id (N)).O (1)); end Predefined_Simple_Type; procedure Set_Predefined_Simple_Type (N : node_id; V : byte) is begin pragma assert (False or else Table (node_id (N)).Kind = k_type_definition); Table (node_id (N)).O (1) := byte (V); end Set_Predefined_Simple_Type; function Maximal_Length (N : node_id) return value_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_type_definition); return value_id (Table (node_id (N)).L (8)); end Maximal_Length; procedure Set_Maximal_Length (N : node_id; V : value_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_type_definition); Table (node_id (N)).L (8) := int (V); end Set_Maximal_Length; function Symbolic_Values (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_type_definition); return list_id (Table (node_id (N)).L (9)); end Symbolic_Values; procedure Set_Symbolic_Values (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_type_definition); Table (node_id (N)).L (9) := int (V); end Set_Symbolic_Values; function Subprograms (N : node_id) return list_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_type_definition); return list_id (Table (node_id (N)).L (10)); end Subprograms; procedure Set_Subprograms (N : node_id; V : list_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_type_definition); Table (node_id (N)).L (10) := int (V); end Set_Subprograms; function Access_Protocol (N : node_id) return name_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_type_definition); return name_id (Table (node_id (N)).L (11)); end Access_Protocol; procedure Set_Access_Protocol (N : node_id; V : name_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_type_definition); Table (node_id (N)).L (11) := int (V); end Set_Access_Protocol; function Updating_Policy (N : node_id) return name_id is begin pragma assert (False or else Table (node_id (N)).Kind = k_type_definition); return name_id (Table (node_id (N)).L (12)); end Updating_Policy; procedure Set_Updating_Policy (N : node_id; V : name_id) is begin pragma assert (False or else Table (node_id (N)).Kind = k_type_definition); Table (node_id (N)).L (12) := int (V); end Set_Updating_Policy; procedure W_Node (N : node_id) is begin case Kind (N) is when k_identifier => W_Identifier (node_id (N)); when k_gaia_definition => W_Gaia_Definition (node_id (N)); when k_scoped_name => W_Scoped_Name (node_id (N)); when k_property => W_Property (node_id (N)); when k_gaia_scope_definition => W_Gaia_Scope_Definition (node_id (N)); when k_package_name_element => W_Package_Name_Element (node_id (N)); when k_root_node => W_Root_Node (node_id (N)); when k_distributed_application => W_Distributed_Application (node_id (N)); when k_declaration_list => W_Declaration_List (list_id (N)); when k_namespace => W_Namespace (node_id (N)); when k_call_sequence => W_Call_Sequence (node_id (N)); when k_subprogram => W_Subprogram (node_id (N)); when k_thread => W_Thread (node_id (N)); when k_process => W_Process (node_id (N)); when k_parameter => W_Parameter (node_id (N)); when k_parameter_connection => W_Parameter_Connection (node_id (N)); when k_thread_reference => W_Thread_Reference (node_id (N)); when k_port => W_Port (node_id (N)); when k_destination_port => W_Destination_Port (node_id (N)); when k_variable_definition => W_Variable_Definition (node_id (N)); when k_subprogram_call => W_Subprogram_Call (node_id (N)); when k_subprogram_reference => W_Subprogram_Reference (node_id (N)); when k_symbolic_value => W_Symbolic_Value (node_id (N)); when k_type_definition => W_Type_Definition (node_id (N)); when others => null; end case; end W_Node; procedure W_Identifier (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Name", "Name_Id", Image (Name (N))); W_Node_Attribute ("Backend_Node", "Node_Id", Image (Backend_Node (N)), int (Backend_Node (N))); W_Node_Attribute ("Corresponding_Entity", "Node_Id", Image (Corresponding_Entity (N)), int (Corresponding_Entity (N))); end W_Identifier; procedure W_Gaia_Definition (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); end W_Gaia_Definition; procedure W_Scoped_Name (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Parent_Scoped_Name", "Node_Id", Image (Parent_Scoped_Name (N)), int (Parent_Scoped_Name (N))); W_Node_Attribute ("Reference", "Node_Id", Image (Reference (N)), int (Reference (N))); end W_Scoped_Name; procedure W_Property (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Entity", "Name_Id", Image (Entity (N))); W_Node_Attribute ("Value", "Node_Id", Image (Value (N)), int (Value (N))); end W_Property; procedure W_Gaia_Scope_Definition (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Scoped_Name", "Node_Id", Image (Scoped_Name (N)), int (Scoped_Name (N))); W_Node_Attribute ("Properties", "List_Id", Image (Properties (N)), int (Properties (N))); end W_Gaia_Scope_Definition; procedure W_Package_Name_Element (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); end W_Package_Name_Element; procedure W_Root_Node (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Scoped_Name", "Node_Id", Image (Scoped_Name (N)), int (Scoped_Name (N))); W_Node_Attribute ("Properties", "List_Id", Image (Properties (N)), int (Properties (N))); W_Node_Attribute ("Namespaces", "List_Id", Image (Namespaces (N)), int (Namespaces (N))); W_Node_Attribute ("Node_Location", "Name_Id", Image (Node_Location (N))); W_Node_Attribute ("Port_Number", "Value_Id", Image (Port_Number (N))); W_Node_Attribute ("Thread_Number", "Int", Image (Thread_Number (N))); W_Node_Attribute ("Priority_Managed", "Boolean", Image (Priority_Managed (N))); end W_Root_Node; procedure W_Distributed_Application (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Root_Nodes", "List_Id", Image (Root_Nodes (N)), int (Root_Nodes (N))); W_Node_Attribute ("Protocol", "Name_Id", Image (Protocol (N))); end W_Distributed_Application; procedure W_Declaration_List (N : list_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("First_Node", "Node_Id", Image (First_Node (N)), int (First_Node (N))); W_Node_Attribute ("Last_Node", "Node_Id", Image (Last_Node (N)), int (Last_Node (N))); end W_Declaration_List; procedure W_Namespace (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Scoped_Name", "Node_Id", Image (Scoped_Name (N)), int (Scoped_Name (N))); W_Node_Attribute ("Properties", "List_Id", Image (Properties (N)), int (Properties (N))); W_Node_Attribute ("Public_Declarations", "List_Id", Image (Public_Declarations (N)), int (Public_Declarations (N))); W_Node_Attribute ("Private_Declarations", "List_Id", Image (Private_Declarations (N)), int (Private_Declarations (N))); end W_Namespace; procedure W_Call_Sequence (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Scoped_Name", "Node_Id", Image (Scoped_Name (N)), int (Scoped_Name (N))); W_Node_Attribute ("Properties", "List_Id", Image (Properties (N)), int (Properties (N))); W_Node_Attribute ("Statements", "List_Id", Image (Statements (N)), int (Statements (N))); end W_Call_Sequence; procedure W_Subprogram (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Scoped_Name", "Node_Id", Image (Scoped_Name (N)), int (Scoped_Name (N))); W_Node_Attribute ("Properties", "List_Id", Image (Properties (N)), int (Properties (N))); W_Node_Attribute ("Variables", "List_Id", Image (Variables (N)), int (Variables (N))); W_Node_Attribute ("Parameters", "List_Id", Image (Parameters (N)), int (Parameters (N))); W_Node_Attribute ("Implemented_By", "Name_Id", Image (Implemented_By (N))); W_Node_Attribute ("Implementation_Language", "Name_Id", Image (Implementation_Language (N))); W_Node_Attribute ("Call_Sequences", "List_Id", Image (Call_Sequences (N)), int (Call_Sequences (N))); W_Node_Attribute ("Connections", "List_Id", Image (Connections (N)), int (Connections (N))); W_Node_Attribute ("Owner_Data", "Node_Id", Image (Owner_Data (N)), int (Owner_Data (N))); end W_Subprogram; procedure W_Thread (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Scoped_Name", "Node_Id", Image (Scoped_Name (N)), int (Scoped_Name (N))); W_Node_Attribute ("Properties", "List_Id", Image (Properties (N)), int (Properties (N))); W_Node_Attribute ("Variables", "List_Id", Image (Variables (N)), int (Variables (N))); W_Node_Attribute ("Call_Sequences", "List_Id", Image (Call_Sequences (N)), int (Call_Sequences (N))); W_Node_Attribute ("Connections", "List_Id", Image (Connections (N)), int (Connections (N))); W_Node_Attribute ("Ports", "List_Id", Image (Ports (N)), int (Ports (N))); W_Node_Attribute ("Period", "Value_Id", Image (Period (N))); W_Node_Attribute ("Priority", "Value_Id", Image (Priority (N))); W_Node_Attribute ("Storage_Size", "Value_Id", Image (Storage_Size (N))); W_Node_Attribute ("Access_Provided_By", "Node_Id", Image (Access_Provided_By (N)), int (Access_Provided_By (N))); W_Node_Attribute ("Unique", "Boolean", Image (Unique (N))); W_Node_Attribute ("Sources_Number", "Int", Image (Sources_Number (N))); end W_Thread; procedure W_Process (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Scoped_Name", "Node_Id", Image (Scoped_Name (N)), int (Scoped_Name (N))); W_Node_Attribute ("Properties", "List_Id", Image (Properties (N)), int (Properties (N))); W_Node_Attribute ("Variables", "List_Id", Image (Variables (N)), int (Variables (N))); W_Node_Attribute ("Connections", "List_Id", Image (Connections (N)), int (Connections (N))); W_Node_Attribute ("Ports", "List_Id", Image (Ports (N)), int (Ports (N))); W_Node_Attribute ("Threads", "List_Id", Image (Threads (N)), int (Threads (N))); end W_Process; procedure W_Parameter (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Scoped_Name", "Node_Id", Image (Scoped_Name (N)), int (Scoped_Name (N))); W_Node_Attribute ("Properties", "List_Id", Image (Properties (N)), int (Properties (N))); W_Node_Attribute ("Is_In", "Boolean", Image (Is_In (N))); W_Node_Attribute ("Is_Out", "Boolean", Image (Is_Out (N))); W_Node_Attribute ("Type_Spec", "Node_Id", Image (Type_Spec (N)), int (Type_Spec (N))); end W_Parameter; procedure W_Parameter_Connection (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Scoped_Name", "Node_Id", Image (Scoped_Name (N)), int (Scoped_Name (N))); W_Node_Attribute ("Properties", "List_Id", Image (Properties (N)), int (Properties (N))); W_Node_Attribute ("Source", "Node_Id", Image (Source (N)), int (Source (N))); W_Node_Attribute ("Simple_Source", "Name_Id", Image (Simple_Source (N))); W_Node_Attribute ("Destination", "Node_Id", Image (Destination (N)), int (Destination (N))); W_Node_Attribute ("Simple_Destination", "Name_Id", Image (Simple_Destination (N))); W_Node_Attribute ("Source_Subprogram_Call", "Node_Id", Image (Source_Subprogram_Call (N)), int (Source_Subprogram_Call (N))); W_Node_Attribute ("Destination_Subprogram_Call", "Node_Id", Image (Destination_Subprogram_Call (N)), int (Destination_Subprogram_Call (N))); end W_Parameter_Connection; procedure W_Thread_Reference (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Corresponding_Thread", "Node_Id", Image (Corresponding_Thread (N)), int (Corresponding_Thread (N))); end W_Thread_Reference; procedure W_Port (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Scoped_Name", "Node_Id", Image (Scoped_Name (N)), int (Scoped_Name (N))); W_Node_Attribute ("Properties", "List_Id", Image (Properties (N)), int (Properties (N))); W_Node_Attribute ("Is_In", "Boolean", Image (Is_In (N))); W_Node_Attribute ("Is_Out", "Boolean", Image (Is_Out (N))); W_Node_Attribute ("Type_Spec", "Node_Id", Image (Type_Spec (N)), int (Type_Spec (N))); W_Node_Attribute ("Fifo_Size", "Value_Id", Image (Fifo_Size (N))); W_Node_Attribute ("Trigger", "Boolean", Image (Trigger (N))); W_Node_Attribute ("Destinations", "List_Id", Image (Destinations (N)), int (Destinations (N))); end W_Port; procedure W_Destination_Port (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Port_Number", "Value_Id", Image (Port_Number (N))); W_Node_Attribute ("Frontend_Node", "Node_Id", Image (Frontend_Node (N)), int (Frontend_Node (N))); W_Node_Attribute ("Thread_Location", "Name_Id", Image (Thread_Location (N))); W_Node_Attribute ("Thread_Name", "Name_Id", Image (Thread_Name (N))); W_Node_Attribute ("Process_Name", "Name_Id", Image (Process_Name (N))); end W_Destination_Port; procedure W_Variable_Definition (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Scoped_Name", "Node_Id", Image (Scoped_Name (N)), int (Scoped_Name (N))); W_Node_Attribute ("Properties", "List_Id", Image (Properties (N)), int (Properties (N))); W_Node_Attribute ("Access_Provided_By", "Node_Id", Image (Access_Provided_By (N)), int (Access_Provided_By (N))); W_Node_Attribute ("Type_Spec", "Node_Id", Image (Type_Spec (N)), int (Type_Spec (N))); end W_Variable_Definition; procedure W_Subprogram_Call (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Scoped_Name", "Node_Id", Image (Scoped_Name (N)), int (Scoped_Name (N))); W_Node_Attribute ("Properties", "List_Id", Image (Properties (N)), int (Properties (N))); W_Node_Attribute ("Parameters", "List_Id", Image (Parameters (N)), int (Parameters (N))); W_Node_Attribute ("Access_Provided_By", "Node_Id", Image (Access_Provided_By (N)), int (Access_Provided_By (N))); W_Node_Attribute ("Call_Name", "Name_Id", Image (Call_Name (N))); W_Node_Attribute ("Corresponding_Subprogram", "Node_Id", Image (Corresponding_Subprogram (N)), int (Corresponding_Subprogram (N))); end W_Subprogram_Call; procedure W_Subprogram_Reference (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Corresponding_Subprogram", "Node_Id", Image (Corresponding_Subprogram (N)), int (Corresponding_Subprogram (N))); end W_Subprogram_Reference; procedure W_Symbolic_Value (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Value_Name", "Value_Id", Image (Value_Name (N))); end W_Symbolic_Value; procedure W_Type_Definition (N : node_id) is begin W_Node_Header (node_id (N)); W_Node_Attribute ("Next_Node", "Node_Id", Image (Next_Node (N)), int (Next_Node (N))); W_Node_Attribute ("Identifier", "Node_Id", Image (Identifier (N)), int (Identifier (N))); W_Node_Attribute ("Scoped_Name", "Node_Id", Image (Scoped_Name (N)), int (Scoped_Name (N))); W_Node_Attribute ("Properties", "List_Id", Image (Properties (N)), int (Properties (N))); W_Node_Attribute ("Frontend_Node", "Node_Id", Image (Frontend_Node (N)), int (Frontend_Node (N))); W_Node_Attribute ("Subtypes", "List_Id", Image (Subtypes (N)), int (Subtypes (N))); W_Node_Attribute ("Predefined_Simple_Type", "Byte", Image (Predefined_Simple_Type (N))); W_Node_Attribute ("Maximal_Length", "Value_Id", Image (Maximal_Length (N))); W_Node_Attribute ("Symbolic_Values", "List_Id", Image (Symbolic_Values (N)), int (Symbolic_Values (N))); W_Node_Attribute ("Subprograms", "List_Id", Image (Subprograms (N)), int (Subprograms (N))); W_Node_Attribute ("Access_Protocol", "Name_Id", Image (Access_Protocol (N))); W_Node_Attribute ("Updating_Policy", "Name_Id", Image (Updating_Policy (N))); end W_Type_Definition; end Gaia.Processor.Nodes;