.TH orber_ifr 3erl "orber 3.8.2" "Ericsson AB" "Erlang Module Definition" .SH NAME orber_ifr \- The Interface Repository stores representations of IDL information .SH DESCRIPTION .LP This module contains functions for managing the Interface Repository (IFR)\&. This documentation should be used in conjunction with the documentation in chapter 6 of 2\&.3\&. Whenever the term IFR object is used in this manual page, it refers to a pseudo object used only for interaction with the IFR rather than a CORBA object\&. .SH "INITIALIZATION OF THE IFR" .LP The following functions are used to initialize the Interface Repository and to obtain the initial reference to the repository\&. .SH EXPORTS .LP .B init(Nodes,Timeout) -> ok .br .RS .LP Types: .RS 3 Nodes = list() .br Timeout = integer() | infinity .br .RE .RE .RS .LP This function should be called to initialize the IFR\&. It creates the necessary mnesia-tables\&. A mnesia schema should exist, and mnesia must be running\&. .RE .LP .B find_repository() -> #IFR_Repository_objref .br .RS .LP Find the IFR object reference for the Repository\&. This reference should be used when adding objects to the IFR, and when extracting information from the IFR\&. The first time this function is called, it will create the repository and all the primitive definitions\&. .RE .SH "GENERAL METHODS" .LP The following functions are the methods of the IFR\&. The first argument is always an #IFR_objref, i\&.e\&. the IFR (pseudo)object on which to apply this method\&. These functions are useful when the type of IFR object is not know, but they are somewhat slower than the specific functions listed below which only accept a particular type of IFR object as the first argument\&. .SH EXPORTS .LP .B get_def_kind(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Return = atom() (one of dk_none, dk_all, dk_Attribute, dk_Constant, dk_Exception, dk_Interface, dk_Module, dk_Operation, dk_Typedef, dk_Alias, dk_Struct, dk_Union, dk_Enum, dk_Primitive, dk_String, dk_Wstring, dk_Fixed, dk_Sequence, dk_Array, dk_Repository) .br .RE .RE .RS .LP Objref is an IFR object of any kind\&. Returns the definition kind of the IFR object\&. .RE .LP .B destroy(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_object .br Return = tuple() .br .RE .RE .RS .LP Objref is an IFR object of any kind except IRObject, Contained and Container\&. Destroys that object and its contents (if any)\&. Returns whatever mnesia:transaction returns\&. .RE .LP .B get_id(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_object .br Return = string() .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Contained\&. Returns the repository id of that object\&. .RE .LP .B set_id(Objref,Id) -> ok .br .RS .LP Types: .RS 3 Objref = #IFR_object .br Id = string() .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Contained\&. Sets the repository id of that object\&. .RE .LP .B get_name(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_object .br Return = string() .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Contained\&. Returns the name of that object\&. .RE .LP .B set_name(Objref,Name) -> ok .br .RS .LP Types: .RS 3 Objref = #IFR_object .br Name = string() .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Contained\&. Sets the name of that object\&. .RE .LP .B get_version(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_object .br Return = string() .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Contained\&. Returns the version of that object\&. .RE .LP .B set_version(Objref,Version) -> ok .br .RS .LP Types: .RS 3 Objref = #IFR_object .br Version = string() .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Contained\&. Sets the version of that object\&. .RE .LP .B get_defined_in(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_object .br Return = #IFR_Container_objref .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Contained\&. Returns the Container object that the object is defined in\&. .RE .LP .B get_absolute_name(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_object .br Return = string() .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Contained\&. Returns the absolute (scoped) name of that object\&. .RE .LP .B get_containing_repository(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_object .br Return = #IFR_Repository_objref .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Contained\&. Returns the Repository that is eventually reached by recursively following the object\&'s defined_in attribute\&. .RE .LP .B describe(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_object .br Return = tuple() (a contained_description record) | {exception, _} .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Contained\&. Returns a tuple describing the object\&. .RE .LP .B move(Objref,New_container,New_name,New_version) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br New_container = #IFR_Container_objref .br New_name = string() .br New_version = string() .br Return = ok | {exception, _} .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Contained\&. New_container is an IFR object of any kind that inherits from Container\&. Removes Objref from its current Container, and adds it to New_container\&. The name attribute is changed to New_name and the version attribute is changed to New_version\&. .RE .LP .B lookup(Objref,Search_name) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Search_name = string() .br Return = #IFR_object .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Container\&. Returns an IFR object identified by search_name (a scoped name)\&. .RE .LP .B contents(Objref,Limit_type,Exclude_inherited) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Limit_type = atom() (one of dk_none, dk_all, dk_Attribute, dk_Constant, dk_Exception, dk_Interface, dk_Module, dk_Operation, dk_Typedef, dk_Alias, dk_Struct, dk_Union, dk_Enum, dk_Primitive, dk_String, dk_Wstring, dk_Fixed, dk_Sequence, dk_Array, dk_Repository) .br Exclude_inherited = atom() (true or false) .br Return = list() (a list of IFR#_objects) .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Container\&. Returns the contents of that IFR object\&. .RE .LP .B lookup_name(Objref,Search_name,Levels_to_search, Limit_type, Exclude_inherited) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Search_name = string() .br Levels_to_search = integer() .br Limit_type = atom() (one of dk_none, dk_all, dk_Attribute, dk_Constant, dk_Exception, dk_Interface, dk_Module, dk_Operation, dk_Typedef, dk_Alias, dk_Struct, dk_Union, dk_Enum, dk_Primitive, dk_String, dk_Wstring, dk_Fixed, dk_Sequence, dk_Array, dk_Repository) .br Exclude_inherited = atom() (true or false) .br Return = list() (a list of #IFR_objects) .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Container\&. Returns a list of #IFR_objects with an id matching Search_name\&. .RE .LP .B describe_contents(Objref, Limit_type, Exclude_inherited, Max_returned_objs) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Limit_type = atom() (one of dk_none, dk_all, dk_Attribute, dk_Constant, dk_Exception, dk_Interface, dk_Module, dk_Operation, dk_Typedef, dk_Alias, dk_Struct, dk_Union, dk_Enum, dk_Primitive, dk_String, dk_Wstring, dk_Fixed, dk_Sequence, dk_Array, dk_Repository) .br Exclude_inherited = atom() (true or false) .br Return = list() (a list of tuples (contained_description records) | {exception, _} .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Container\&. Returns a list of descriptions of the IFR objects in this Container\&'s contents\&. .RE .LP .B create_module(Objref,Id,Name,Version) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Id = string() .br Name = string() .br Version = string() .br Return = #IFR_ModuleDef_objref .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Container\&. Creates an IFR object of the type ModuleDef\&. .RE .LP .B create_constant(Objref,Id,Name,Version,Type,Value) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Id = string() .br Name = string() .br Version = string() .br Type = #IFR_IDLType_objref .br Value = any() .br Return = #IFR_ConstantDef_objref .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Container\&. Creates an IFR object of the type ConstantDef\&. .RE .LP .B create_struct(Objref,Id,Name,Version,Members) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Id = string() .br Name = string() .br Version = string() .br Members = list() (list of structmember records) .br Return = #IFR_StructDef_objref .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Container\&. Creates an IFR object of the type StructDef\&. .RE .LP .B create_union(Objref,Id,Name,Version,Discriminator_type,Members) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Id = string() .br Name = string() .br Version = string() .br Discriminator_type = #IFR_IDLType_Objref .br Members = list() (list of unionmember records) .br Return = #IFR_UnionDef_objref .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Container\&. Creates an IFR object of the type UnionDef\&. .RE .LP .B create_enum(Objref,Id,Name,Version,Members) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Id = string() .br Name = string() .br Version = string() .br Members = list() (list of strings) .br Return = #IFR_EnumDef_objref .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Container\&. Creates an IFR object of the type EnumDef\&. .RE .LP .B create_alias(Objref,Id,Name,Version,Original_type) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Id = string() .br Name = string() .br Version = string() .br Original_type = #IFR_IDLType_Objref .br Return = #IFR_AliasDef_objref .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Container\&. Creates an IFR object of the type AliasDef\&. .RE .LP .B create_interface(Objref,Id,Name,Version,Base_interfaces) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Id = string() .br Name = string() .br Version = string() .br Base_interfaces = list() (a list of IFR_InterfaceDef_objrefs that this interface inherits from .br Return = #IFR_InterfaceDef_objref .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Container\&. Creates an IFR object of the type InterfaceDef\&. .RE .LP .B create_exception(Objref,Id,Name,Version,Members) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Id = string() .br Name = string() .br Version = string() .br Members = list() (list of structmember records) .br Return = #IFR_ExceptionDef_objref .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from Container\&. Creates an IFR object of the type ExceptionDef\&. .RE .LP .B get_type(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Return = tuple() (a typecode tuple) .br .RE .RE .RS .LP Objref is an IFR object of any kind that inherits from IDLType or an IFR object of the kind ConstantDef, ExceptionDef or AttributeDef\&. Returns the typecode of the IFR object\&. .RE .LP .B lookup_id(Objref,Search_id) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_Repository_objref .br Search_id = string() .br Return = #IFR_objref .br .RE .RE .RS .LP Returns an IFR object matching the Search_id\&. .RE .LP .B get_primitive(Objref,Kind) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_Repository_objref .br Kind = atom() (one of pk_null, pk_void, pk_short, pk_long, pk_ushort, pk_ulong, pk_float, pk_double, pk_boolean, pk_char, pk_octet, pk_any, pk_TypeCode, pk_Principal, pk_string, pk_wstring, pk_fixed, pk_objref) .br Return = #IFR_PrimitiveDef_objref .br .RE .RE .RS .LP Returns a PrimitiveDef of the specified kind\&. .RE .LP .B create_string(Objref,Bound) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_Repository_objref .br Bound = integer() (unsigned long /= 0) .br Return = #IFR_StringDef_objref .br .RE .RE .RS .LP Creates an IFR objref of the type StringDef\&. .RE .LP .B create_wstring(Objref,Bound) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_Repository_objref .br Bound = integer() (unsigned long /= 0) .br Return = #IFR_WstringDef_objref .br .RE .RE .RS .LP Creates an IFR objref of the type WstringDef\&. .RE .LP .B create_fixed(Objref,Digits,Scale) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_Repository_objref .br Digits = Scale = integer() .br Return = #IFR_FixedDef_objref .br .RE .RE .RS .LP Creates an IFR objref of the type FixedDef\&. .RE .LP .B create_sequence(Objref,Bound,Element_type) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_Repository_objref .br Bound = integer() (unsigned long) .br Element_type = #IFR_IDLType_objref .br Return = #IFR_SequenceDef_objref .br .RE .RE .RS .LP Creates an IFR objref of the type SequenceDef\&. .RE .LP .B create_array(Objref,Length,Element_type) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_Repository_objref .br Bound = integer() (unsigned long) .br Element_type = #IFR_IDLType_objref .br Return = #IFR_ArrayDef_objref .br .RE .RE .RS .LP Creates an IFR objref of the type ArrayDef\&. .RE .LP .B create_idltype(Objref,Typecode) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_Repository_objref .br Typecode = tuple() (a typecode tuple) .br Return = #IFR_IDLType_objref .br .RE .RE .RS .LP Creates an IFR objref of the type IDLType\&. .RE .LP .B get_type_def(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Return = #IFR_IDLType_objref .br .RE .RE .RS .LP Objref is an IFR object of the kind ConstantDef or AttributeDef\&. Returns an IFR object of the type IDLType describing the type of the IFR object\&. .RE .LP .B set_type_def(Objref,TypeDef) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br TypeDef = #IFR_IDLType_objref .br Return = ok | {exception, _} .br .RE .RE .RS .LP Objref is an IFR object of the kind ConstantDef or AttributeDef\&. Sets the type_def of the IFR Object\&. .RE .LP .B get_value(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_ConstantDef_objref .br Return = any() .br .RE .RE .RS .LP Returns the value attribute of an IFR Object of the type ConstantDef\&. .RE .LP .B set_value(Objref,Value) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_ConstantDef_objref .br Value = any() .br Return = ok | {exception, _} .br .RE .RE .RS .LP Sets the value attribute of an IFR Object of the type ConstantDef\&. .RE .LP .B get_members(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Return = list() .br .RE .RE .RS .LP Objref is an IFR object the kind StructDef, UnionDef, EnumDef or ExceptionDef\&. For StructDef, UnionDef and ExceptionDef: Returns a list of structmember records that are the constituent parts of the object\&. For EnumDef: Returns a list of strings describing the enumerations\&. .RE .LP .B set_members(Objref,Members) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Members = list() .br Return = ok | {exception, _} .br .RE .RE .RS .LP Objref is an IFR object the kind StructDef, UnionDef, EnumDef or ExceptionDef\&. For StructDef, UnionDef and ExceptionDef: Members is a list of structmember records\&. For EnumDef: Members is a list of strings describing the enumerations\&. Sets the members attribute, which are the constituent parts of the exception\&. .RE .LP .B get_discriminator_type(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_UnionDef_objref .br Return = tuple() (a typecode tuple) .br .RE .RE .RS .LP Returns the discriminator typecode of an IFR object of the type UnionDef\&. .RE .LP .B get_discriminator_type_def(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_UnionDef_objref .br Return = #IFR_IDLType_objref .br .RE .RE .RS .LP Returns an IFR object of the type IDLType describing the discriminator type of an IFR object of the type UnionDef\&. .RE .LP .B set_discriminator_type_def(Objref,TypeDef) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_UnionDef_objref .br Return = #IFR_IDLType_objref .br .RE .RE .RS .LP Sets the attribute discriminator_type_def, an IFR object of the type IDLType describing the discriminator type of an IFR object of the type UnionDef\&. .RE .LP .B get_original_type_def(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_AliasDef_objref .br Return = #IFR_IDLType_objref .br .RE .RE .RS .LP Returns an IFR object of the type IDLType describing the original type\&. .RE .LP .B set_original_type_def(Objref,TypeDef) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_AliasDef_objref .br Typedef = #IFR_IDLType_objref .br Return = ok | {exception, _} .br .RE .RE .RS .LP Sets the original_type_def attribute which describes the original type\&. .RE .LP .B get_kind(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_PrimitiveDef_objref .br Return = atom() .br .RE .RE .RS .LP Returns an atom describing the primitive type (See CORBA 2\&.0 p 6-21)\&. .RE .LP .B get_bound(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Return = integer (unsigned long) .br .RE .RE .RS .LP Objref is an IFR object the kind StringDef or SequenceDef\&. For StringDef: returns the maximum number of characters in the string\&. For SequenceDef: Returns the maximum number of elements in the sequence\&. Zero indicates an unbounded sequence\&. .RE .LP .B set_bound(Objref,Bound) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Bound = integer (unsigned long) .br Return = ok | {exception, _} .br .RE .RE .RS .LP Objref is an IFR object the kind StringDef or SequenceDef\&. For StringDef: Sets the maximum number of characters in the string\&. Bound must not be zero\&. For SequenceDef: Sets the maximum number of elements in the sequence\&. Zero indicates an unbounded sequence\&. .RE .LP .B get_element_type(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Return = tuple() (a typecode tuple) .br .RE .RE .RS .LP Objref is an IFR object the kind SequenceDef or ArrayDef\&. Returns the typecode of the elements in the IFR object\&. .RE .LP .B get_element_type_def(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Return = #IFR_IDLType_objref .br .RE .RE .RS .LP Objref is an IFR object the kind SequenceDef or ArrayDef\&. Returns an IFR object of the type IDLType describing the type of the elements in Objref\&. .RE .LP .B set_element_type_def(Objref,TypeDef) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br TypeDef = #IFR_IDLType_objref .br Return = ok | {exception, _} .br .RE .RE .RS .LP Objref is an IFR object the kind SequenceDef or ArrayDef\&. Sets the element_type_def attribute, an IFR object of the type IDLType describing the type of the elements in Objref\&. .RE .LP .B get_length(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_ArrayDef_objref .br Return = integer() (unsigned long) .br .RE .RE .RS .LP Returns the number of elements in the array\&. .RE .LP .B set_length(Objref,Length) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_ArrayDef_objref .br Length = integer() (unsigned long) .br .RE .RE .RS .LP Sets the number of elements in the array\&. .RE .LP .B get_mode(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Return = atom() .br .RE .RE .RS .LP Objref is an IFR object the kind AttributeDef or OperationDef\&. For AttributeDef: Return is an atom (\&'ATTR_NORMAL\&' or \&'ATTR_READONLY\&') specifying the read/write access for this attribute\&. For OperationDef: Return is an atom (\&'OP_NORMAL\&' or \&'OP_ONEWAY\&') specifying the mode of the operation\&. .RE .LP .B set_mode(Objref,Mode) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_objref .br Mode = atom() .br Return = ok | {exception, _} .br .RE .RE .RS .LP Objref is an IFR object the kind AttributeDef or OperationDef\&. For AttributeDef: Sets the read/write access for this attribute\&. Mode is an atom (\&'ATTR_NORMAL\&' or \&'ATTR_READONLY\&')\&. For OperationDef: Sets the mode of the operation\&. Mode is an atom (\&'OP_NORMAL\&' or \&'OP_ONEWAY\&')\&. .RE .LP .B get_result(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_OperationDef_objref .br Return = tuple() (a typecode tuple) .br .RE .RE .RS .LP Returns a typecode describing the type of the value returned by the operation\&. .RE .LP .B get_result_def(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_OperationDef_objref .br Return = #IFR_IDLType_objref .br .RE .RE .RS .LP Returns an IFR object of the type IDLType describing the type of the result\&. .RE .LP .B set_result_def(Objref,ResultDef) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_OperationDef_objref .br ResultDef = #IFR_IDLType_objref .br Return = ok | {exception, _} .br .RE .RE .RS .LP Sets the type_def attribute, an IFR Object of the type IDLType describing the result\&. .RE .LP .B get_params(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_OperationDef_objref .br Return = list() (list of parameter description records) .br .RE .RE .RS .LP Returns a list of parameter description records, which describes the parameters of the OperationDef\&. .RE .LP .B set_params(Objref,Params) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_OperationDef_objref .br Params = list() (list of parameter description records) .br Return = ok | {exception, _} .br .RE .RE .RS .LP Sets the params attribute, a list of parameter description records\&. .RE .LP .B get_contexts(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_OperationDef_objref .br Return = list() (list of strings) .br .RE .RE .RS .LP Returns a list of context identifiers for the operation\&. .RE .LP .B set_contexts(Objref,Contexts) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_OperationDef_objref .br Contexts = list() (list of strings) .br Return = ok | {exception, _} .br .RE .RE .RS .LP Sets the context attribute for the operation\&. .RE .LP .B get_exceptions(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_OperationDef_objref .br Return = list() (list of #IFR_ExceptionDef_objrefs) .br .RE .RE .RS .LP Returns a list of exception types that can be raised by this operation\&. .RE .LP .B set_exceptions(Objref,Exceptions) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_OperationDef_objref .br Exceptions = list() (list of #IFR_ExceptionDef_objrefs) .br Return = ok | {exception, _} .br .RE .RE .RS .LP Sets the exceptions attribute for this operation\&. .RE .LP .B get_base_interfaces(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_InterfaceDef_objref .br Return = list() (list of #IFR_InterfaceDef_objrefs) .br .RE .RE .RS .LP Returns a list of InterfaceDefs from which this InterfaceDef inherits\&. .RE .LP .B set_base_interfaces(Objref,BaseInterfaces) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_InterfaceDef_objref .br BaseInterfaces = list() (list of #IFR_InterfaceDef_objrefs) .br Return = ok | {exception, _} .br .RE .RE .RS .LP Sets the BaseInterfaces attribute\&. .RE .LP .B is_a(Objref,Interface_id) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_InterfaceDef_objref .br Interface_id = #IFR_InterfaceDef_objref .br Return = atom() (true or false) .br .RE .RE .RS .LP Returns true if the InterfaceDef either is identical to or inherits from Interface_id\&. .RE .LP .B describe_interface(Objref) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_InterfaceDef_objref .br Return = tuple() (a fullinterfacedescription record) .br .RE .RE .RS .LP Returns a full inter face description record describing the InterfaceDef\&. .RE .LP .B create_attribute(Objref,Id,Name,Version,Type,Mode) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_InterfaceDef_objref .br Id = string() .br Name = string() .br Version = string() .br Type = #IFR_IDLType_objref .br Mode = atom() (\&'ATTR_NORMAL\&' or \&'ATTR_READONLY\&') .br Return = #IFR_AttributeDef_objref .br .RE .RE .RS .LP Creates an IFR object of the type AttributeDef contained in this InterfaceDef\&. .RE .LP .B create_operation(Objref,Id,Name,Version,Result,Mode,Params, Exceptions,Contexts) -> Return .br .RS .LP Types: .RS 3 Objref = #IFR_InterfaceDef_objref .br Id = string() .br Name = string() .br Version = string() .br Result = #IFR_IDLType_objref .br Mode = atom() (\&'OP_NORMAL\&' or \&'OP_ONEWAY\&') .br Params = list() (list of parameter description records) .br Exceptions = list() (list of #IFR_ExceptionDef_objrefs) .br Contexts = list() (list of strings) .br Return = #IFR_OperationDef_objref .br .RE .RE .RS .LP Creates an IFR object of the type OperationDef contained in this InterfaceDef\&. .RE