pragma Style_Checks ("NM32766");
pragma Wide_Character_Encoding (Brackets);
pragma Warnings (Off, "use of an anonymous access type allocator");

---------------------------------------------------
--  This file has been generated automatically from
--  /pbulk/work/net/ada-polyorb/work/PolyORB-25.0/idls/CORBA_IDL/orb.idl
--  by IAC (IDL to Ada Compiler) 25.0w (rev. unknown).
---------------------------------------------------
--  NOTE: If you modify this file by hand, your
--  changes will be lost when you re-run the
--  IDL to Ada compiler.
---------------------------------------------------

with CORBA.Repository_Root.IRObject;
with PolyORB.Std;
with CORBA;
pragma Elaborate_All (CORBA);
with CORBA.Repository_Root.Contained;
with CORBA.Sequences.Unbounded;

package CORBA.Repository_Root.Container is

   type Ref is
     new CORBA.Repository_Root.IRObject.Ref with null record;

   Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container:1.0";

   function lookup
     (Self : Ref;
      search_name : CORBA.ScopedName)
     return CORBA.Repository_Root.Contained.Ref;

   lookup_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/lookup:1.0";

   function contents
     (Self : Ref;
      limit_type : CORBA.Repository_Root.DefinitionKind;
      exclude_inherited : CORBA.Boolean)
     return CORBA.Repository_Root.ContainedSeq;

   contents_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/contents:1.0";

   function lookup_name
     (Self : Ref;
      search_name : CORBA.Identifier;
      levels_to_search : CORBA.Long;
      limit_type : CORBA.Repository_Root.DefinitionKind;
      exclude_inherited : CORBA.Boolean)
     return CORBA.Repository_Root.ContainedSeq;

   lookup_name_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/lookup_name:1.0";

   type Description is
     record
         contained_object : CORBA.Repository_Root.Contained.Ref;
         kind : CORBA.Repository_Root.DefinitionKind;
         value : CORBA.Any;
      end record;

   Description_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/Description:1.0";

   package IDL_SEQUENCE_CORBA_Container_Description is
     new CORBA.Sequences.Unbounded
        (CORBA.Repository_Root.Container.Description);

   type DescriptionSeq is
     new CORBA.Repository_Root.Container.IDL_SEQUENCE_CORBA_Container_Description.Sequence;

   DescriptionSeq_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/DescriptionSeq:1.0";

   function describe_contents
     (Self : Ref;
      limit_type : CORBA.Repository_Root.DefinitionKind;
      exclude_inherited : CORBA.Boolean;
      max_returned_objs : CORBA.Long)
     return CORBA.Repository_Root.Container.DescriptionSeq;

   describe_contents_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/describe_contents:1.0";

   function create_module
     (Self : Ref;
      id : CORBA.RepositoryId;
      name : CORBA.Identifier;
      version : CORBA.Repository_Root.VersionSpec)
     return CORBA.Repository_Root.ModuleDef_Forward.Ref;

   create_module_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/create_module:1.0";

   function create_constant
     (Self : Ref;
      id : CORBA.RepositoryId;
      name : CORBA.Identifier;
      version : CORBA.Repository_Root.VersionSpec;
      IDL_type : CORBA.Repository_Root.IDLType_Forward.Ref;
      value : CORBA.Any)
     return CORBA.Repository_Root.ConstantDef_Forward.Ref;

   create_constant_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/create_constant:1.0";

   function create_struct
     (Self : Ref;
      id : CORBA.RepositoryId;
      name : CORBA.Identifier;
      version : CORBA.Repository_Root.VersionSpec;
      members : CORBA.Repository_Root.StructMemberSeq)
     return CORBA.Repository_Root.StructDef_Forward.Ref;

   create_struct_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/create_struct:1.0";

   function create_union
     (Self : Ref;
      id : CORBA.RepositoryId;
      name : CORBA.Identifier;
      version : CORBA.Repository_Root.VersionSpec;
      discriminator_type : CORBA.Repository_Root.IDLType_Forward.Ref;
      members : CORBA.Repository_Root.UnionMemberSeq)
     return CORBA.Repository_Root.UnionDef_Forward.Ref;

   create_union_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/create_union:1.0";

   function create_enum
     (Self : Ref;
      id : CORBA.RepositoryId;
      name : CORBA.Identifier;
      version : CORBA.Repository_Root.VersionSpec;
      members : CORBA.Repository_Root.EnumMemberSeq)
     return CORBA.Repository_Root.EnumDef_Forward.Ref;

   create_enum_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/create_enum:1.0";

   function create_alias
     (Self : Ref;
      id : CORBA.RepositoryId;
      name : CORBA.Identifier;
      version : CORBA.Repository_Root.VersionSpec;
      original_type : CORBA.Repository_Root.IDLType_Forward.Ref)
     return CORBA.Repository_Root.AliasDef_Forward.Ref;

   create_alias_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/create_alias:1.0";

   function create_interface
     (Self : Ref;
      id : CORBA.RepositoryId;
      name : CORBA.Identifier;
      version : CORBA.Repository_Root.VersionSpec;
      base_interfaces : CORBA.Repository_Root.InterfaceDefSeq;
      is_abstract : CORBA.Boolean)
     return CORBA.Repository_Root.InterfaceDef_Forward.Ref;

   create_interface_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/create_interface:1.0";

   function create_value
     (Self : Ref;
      id : CORBA.RepositoryId;
      name : CORBA.Identifier;
      version : CORBA.Repository_Root.VersionSpec;
      is_custom : CORBA.Boolean;
      is_abstract : CORBA.Boolean;
      base_value : CORBA.Repository_Root.ValueDef_Forward.Ref;
      is_truncatable : CORBA.Boolean;
      abstract_base_values : CORBA.Repository_Root.ValueDefSeq;
      supported_interfaces : CORBA.Repository_Root.InterfaceDefSeq;
      initializers : CORBA.Repository_Root.InitializerSeq)
     return CORBA.Repository_Root.ValueDef_Forward.Ref;

   create_value_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/create_value:1.0";

   function create_value_box
     (Self : Ref;
      id : CORBA.RepositoryId;
      name : CORBA.Identifier;
      version : CORBA.Repository_Root.VersionSpec;
      original_type_def : CORBA.Repository_Root.IDLType_Forward.Ref)
     return CORBA.Repository_Root.ValueBoxDef_Forward.Ref;

   create_value_box_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/create_value_box:1.0";

   function create_exception
     (Self : Ref;
      id : CORBA.RepositoryId;
      name : CORBA.Identifier;
      version : CORBA.Repository_Root.VersionSpec;
      members : CORBA.Repository_Root.StructMemberSeq)
     return CORBA.Repository_Root.ExceptionDef_Forward.Ref;

   create_exception_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/create_exception:1.0";

   function create_native
     (Self : Ref;
      id : CORBA.RepositoryId;
      name : CORBA.Identifier;
      version : CORBA.Repository_Root.VersionSpec)
     return CORBA.Repository_Root.NativeDef_Forward.Ref;

   create_native_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/create_native:1.0";

   function create_abstract_interface
     (Self : Ref;
      id : CORBA.RepositoryId;
      name : CORBA.Identifier;
      version : CORBA.Repository_Root.VersionSpec;
      base_interfaces : CORBA.Repository_Root.AbstractInterfaceDefSeq)
     return CORBA.Repository_Root.AbstractInterfaceDef_Forward.Ref;

   create_abstract_interface_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/create_abstract_interface:1.0";

   function create_local_interface
     (Self : Ref;
      id : CORBA.RepositoryId;
      name : CORBA.Identifier;
      version : CORBA.Repository_Root.VersionSpec;
      base_interfaces : CORBA.Repository_Root.InterfaceDefSeq)
     return CORBA.Repository_Root.LocalInterfaceDef_Forward.Ref;

   create_local_interface_Repository_Id : constant PolyORB.Std.String :=
     "IDL:omg.org/CORBA/Container/create_local_interface:1.0";

   function Is_A
     (Self : Ref;
      Logical_Type_Id : PolyORB.Std.String)
     return CORBA.Boolean;

   package Convert_Forward is
     new CORBA.Repository_Root.Container_Forward.Convert
        (Ref);

private
   function Is_A
     (Logical_Type_Id : PolyORB.Std.String)
     return CORBA.Boolean;

end CORBA.Repository_Root.Container;
