## org.openorb.compiler.object
Class IdlObject

    java.lang.Object
      |
      +--org.openorb.compiler.object.IdlObject

All Implemented Interfaces:
  idlObject, java.io.Serializable

Direct Known Subclasses:
  IdlArray, IdlAttribute, IdlConst, IdlContext, IdlEnum, IdlEnumMember, IdlExcept, IdlFactory, IdlFactoryMember, IdlFixed, IdlIdent, IdlImport, IdlInclude, IdlInterface, IdlModule, IdlNative, IdlOp, IdlParam, IdlRaises, IdlRoot, IdlSequence, IdlSimple, IdlStateMember, IdlString, IdlStruct, IdlStructMember, IdlTypeDef, IdlUnion, IdlUnionMember, IdlValue, IdlValueBox, IdlValueInheritance, IdlWString

public class IdlObject
extends java.lang.Object
implements java.io.Serializable, idlObject

This class represents a generic type of IDL objects. IDL objects are e.g. modules, interfaces, etc. The IdlCompiler is creating an in memory tree of an IDL file where each tree element is of type IdlObject.

Version:
  $Revision: 1.9 $ $Date: 2002/08/21 08:19:22 $
Author:
  Jerome Daniel
See Also:
  Serialized Form

Field Summary
`static boolean` `_case_sensitive` Flag whether a case-sensitive mode for comparison is in effect.
`IdlComment` `_comment` Comment associated with the object.
`int` `_current` Current position in the child object list.
`boolean` `_diese` Implique la mise entre #ifndef du symbole
`boolean` `_has_inheritance` Must be set to true if this object can have inheritance.
`java.lang.String` `_id` ID of the object.
`boolean` `_import` Flag qui precise si l'objet est importe
`boolean` `_is_container` Must be set to true if this object is a container.
`java.util.Vector` `_list` List of child objects.
`boolean` `_map` This flag indicates whether the IDL object is defined in an included IDL file.
`java.lang.String` `_name` Name of the object.
`java.lang.Object` `_opaque` This field is used by the JavaToIdl compiler to attach any additional information to an IDL object.
`java.lang.String` `_prefix` CORBA Object prefix.
`boolean` `_prefix_explicit` Is TypeId used for this object ?
`int` `_type` Type value, accessible via kind methods.
`boolean` `_underscore` Y a t'il un underscore
`IdlObject` `_upper` The parent object.
`static boolean` `adaptName` This flag is used to set whether the name must be adapted ( '_' is removed ).
`static java.lang.String` `idlPrefix` Prefix of the IDL object.

Constructor Summary
`IdlObject(int type, IdlObject father)` Constructor

Method Summary
`java.lang.String` `adaptName(java.lang.String name)` If the adaptName flag is set remove a leading underscore.
`void` `addIdlObject(IdlObject obj)` Ajoute un objet supplementaire comme contenu de cet objet
`void` `applyPrefix(java.lang.String prefix)` Apply a prefix
`void` `attach_comment()` Attach a default comment to this object.
`void` `attach_comment(IdlComment comment)` Attach the specified comment to this object.
`void` `changePrefix(java.lang.String prefix)` Change prefix to my self but also to all contained objects
`boolean` `contains(int type)` Permet de tester la possession d'un type dans un autre
`boolean` `containsObject(int type)` Return TRUE if this object contains a object type
`java.util.Enumeration` `content()` Return this idlObject content
`IdlObject` `current()` Retourne l'objet courant de la liste des sous-objets
`boolean` `end()` Retourve Vrai dans le cas ou l'on a atteint la fin de la liste des sous-objets
`java.util.Enumeration` `filter(int type)` Return this idlObject content with a filter
`int` `final_kind()` Return the type of the final object.
`IdlObject` `final_object()` Return the final object.
`IdlComment` `getComment()` Return the comment attached to this object.
`java.lang.String` `getId()` Return the id of the IDL object.
`java.lang.String[]` `getIdComponents()` Return the components of the ID
`java.lang.String` `getPrefix()` Return the IDL object prefix.
`int` `getPrefixDepth()` Return the prefix depth
`boolean` `hasComment()` Check whether this IDL object has a comment attached.
`int` `idlConcreteType()` Return the concrete type ( if IDENTIFIER or TYPEDEF then returns the associated idl object )
`idlObject` `idlDefinedIn()` Return the defined in object
`int` `idlFinalType()` Return the final type ( if IDENTIFIER then returns the associated idl object )
`java.lang.String` `idlID()` Return the IDL ID
`java.lang.String` `idlName()` Return the object name
`int` `idlType()` Return the object type
`boolean` `included()` Indique si l'objet courant est defini dans un fichier inclus
`void` `insertIdlObject(IdlObject obj, int idx)` Insert un element
`boolean` `into(int type)` Permet de tester l'inclusion d'un type dans un autre
`boolean` `isDefined(java.lang.String name, boolean scoped)` Retourne VRAI si l'identificateur passe est deja utilise pour un autre symbole.
`boolean` `isSame(java.lang.String name)` This method returns true if this object is the same as the given name.
`boolean` `isVisible(java.lang.String name_, boolean scoped)` Retourne VRAI si l'identificateur passe est deja utilise pour un autre symbole.
`int` `kind()` Return the type of the IDL object.
`int` `length()` Retourne le nombre de sous-objets
`IdlObject` `myScope(java.lang.String scope_name, int level)` Return the scope of an object.
`java.lang.String` `name()` Return the name of the IDL object.
`void` `name(java.lang.String s)` Set the name of the IDL object.
`java.util.Vector` `nameToSequence(java.lang.String name)` Returns a sequence of identifiers given a supplied name .
`void` `next()` Passe a la position suivante dans la liste des sous-objets
`java.lang.Object` `opaque()` Return the opaque object for ths IDL object.
`void` `opaque(java.lang.Object op)` Set the opaque object for this IDL object.
`int` `pos()` Retourne la position courante dans la liste des sous-objets
`void` `pos(int p)` Fixe la position courante dans la liste des sous-objets
`void` `refreshIncluded()` Recalcul si l'objet courant est defini dans un fichier inclus
`void` `reset()` Initialise la position courante de la liste des sous-objets
`IdlObject` `returnInheritedObject(java.lang.String name)` This method returns an inherited object
`IdlObject` `returnObject(java.lang.String name_, boolean scoped)` Cette methode retourne l'objet demande en fonction de son nom.
`IdlObject` `returnVisibleObject(java.lang.String name_, boolean scoped)` Cette methode retourne l'objet demande en fonction de son nom.
`IdlRoot` `root()` Return the root IDL object.
`IdlObject` `sameAs(java.lang.String name)` Return the equivalent object for the given name
`IdlObject` `search(java.util.Vector seq, boolean scoped)` Recherche un symbole au moyen du chemin defini sous forme d'une sequence
`IdlObject` `searchObject(java.lang.String name)` This method returns an contained object
`void` `sensitive(boolean s)` Set the case sensitive mode to the passed value.
`void` `setId(java.lang.String id)` Set the id of the IDL object.
`IdlObject` `switchFinalObject(IdlObject obj)` Retourne l'objet correspondant au type du switch dans le cas d'une union.
`IdlObject` `type()` Return the member type.
`void` `type(IdlObject tp)` Set the type of the object.
`IdlObject` `upper()` Return the parent IDL object.
`boolean` `use_diese()` Retourne si une section #ifndef est a utiliser
`void` `use_diese(boolean s)` Permet de fixer le fait de l'utilisation de #ifndef

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### _type

    public int _type

  Type value, accessible via kind methods. (@see IdlType, kind).

### _upper

    public IdlObject _upper

  The parent object.

### adaptName

    public static boolean adaptName

  This flag is used to set whether the name must be adapted ( '_' is removed ).

### idlPrefix

    public static java.lang.String idlPrefix

  Prefix of the IDL object.

### _prefix

    public java.lang.String _prefix

  CORBA Object prefix.

### _name

    public java.lang.String _name

  Name of the object.

### _id

    public java.lang.String _id

  ID of the object.

### _list

    public java.util.Vector _list

  List of child objects.

### _current

    public int _current

  Current position in the child object list.

### _map

    public boolean _map

  This flag indicates whether the IDL object is defined in an included IDL file.

### _comment

    public IdlComment _comment

  Comment associated with the object.

### _diese

    public boolean _diese

  Implique la mise entre #ifndef du symbole

### _case_sensitive

    public static boolean _case_sensitive

  Flag whether a case-sensitive mode for comparison is in effect. When this is true all name comparisons are done in upper case.

### _opaque

    public java.lang.Object _opaque

  This field is used by the JavaToIdl compiler to attach any additional information to an IDL object. E.g. exceptions where the IDL name is package::MyExEx and the Java name is just package.MyEx, the _opaque field holds the name package.MyEx in this case. In the getter/setter method case the whole name, including the prefix, is stored in the field. The type is java.lang.Object so that any kind of object can be associated with this IDL object. In the JavaToIdl case the opaque object is always of type String.

### _import

    public boolean _import

  Flag qui precise si l'objet est importe

### _underscore

    public boolean _underscore

  Y a t'il un underscore

### _prefix_explicit

    public boolean _prefix_explicit

  Is TypeId used for this object ?

### _has_inheritance

    public boolean _has_inheritance

  Must be set to true if this object can have inheritance.

### _is_container

    public boolean _is_container

  Must be set to true if this object is a container.

Constructor Detail

### IdlObject

    public IdlObject(int type,
                     IdlObject father)

  Constructor
  Parameters:
    `type` - type of the IDL object.
    `father` - parent object

Method Detail

### switchFinalObject

    public IdlObject switchFinalObject(IdlObject obj)

  Retourne l'objet correspondant au type du switch dans le cas d'une union.
  Parameters:
    `l'objet` - union
  Returns:
    l'objet du switch

### name

    public void name(java.lang.String s)

  Set the name of the IDL object.

### name

    public java.lang.String name()

  Return the name of the IDL object.

### upper

    public IdlObject upper()

  Return the parent IDL object.

### kind

    public int kind()

  Return the type of the IDL object.

### final_kind

    public int final_kind()

  Return the type of the final object. If the IDL object is either a typedef or an identifier this method returns the actual type of the IDL object.

### final_object

    public IdlObject final_object()

  Return the final object. If the IDL object is either a typedef or an identifier this method returns the actual IDL object.

### getPrefix

    public java.lang.String getPrefix()

  Return the IDL object prefix.

### setId

    public void setId(java.lang.String id)

  Set the id of the IDL object.

### getId

    public java.lang.String getId()

  Return the id of the IDL object.

### getPrefixDepth

    public int getPrefixDepth()

  Return the prefix depth

### getIdComponents

    public java.lang.String[] getIdComponents()

  Return the components of the ID

### pos

    public int pos()

  Retourne la position courante dans la liste des sous-objets
  Returns:
    la position courante

### pos

    public void pos(int p)

  Fixe la position courante dans la liste des sous-objets
  Parameters:
    `p` - la position courante

### reset

    public void reset()

  Initialise la position courante de la liste des sous-objets

### end

    public boolean end()

  Retourve Vrai dans le cas ou l'on a atteint la fin de la liste des sous-objets
  Returns:
    VRAI si le parcours est fini

### length

    public int length()

  Retourne le nombre de sous-objets
  Returns:
    le nombre de sous objets

### current

    public IdlObject current()

  Retourne l'objet courant de la liste des sous-objets
  Returns:
    l'objet courant

### next

    public void next()

  Passe a la position suivante dans la liste des sous-objets

### included

    public boolean included()

  Indique si l'objet courant est defini dans un fichier inclus
  Specified by:
    `included` in interface `idlObject`
  Returns:
    VRAI si l'objet est inclus

### refreshIncluded

    public void refreshIncluded()

  Recalcul si l'objet courant est defini dans un fichier inclus

### nameToSequence

    public java.util.Vector nameToSequence(java.lang.String name)

  Returns a sequence of identifiers given a supplied name . The supplied name (in the form value:value:value) is reutnred as a vector of Strings corresponding to the the value elements of the name.
  Parameters:
    `name` - a String
  Returns:
    a `Vector` of matching identifiers.

### search

    public IdlObject search(java.util.Vector seq,
                            boolean scoped)

  Recherche un symbole au moyen du chemin defini sous forme d'une sequence
  Parameters:
    `la` - sequence de noms
  Returns:
    l'objet trouve

### myScope

    public IdlObject myScope(java.lang.String scope_name,
                             int level)

  Return the scope of an object.
  Parameters:
    `scope_name` -
    `level` -

### isVisible

    public boolean isVisible(java.lang.String name_,
                             boolean scoped)

  Retourne VRAI si l'identificateur passe est deja utilise pour un autre symbole.
  Parameters:
    `name` - le nom a verifier
    `scoped` - mettre a vrai si l'on restraint la recherche au scope de l'objet
  Returns:
    retourne VRAI si l'identificateur est deja utilise

### returnVisibleObject

    public IdlObject returnVisibleObject(java.lang.String name_,
                                         boolean scoped)

  Cette methode retourne l'objet demande en fonction de son nom.
  Parameters:
    `name` - le nom de l'objet a retourner
    `scoped` - mettre a vrai si l'on restraint la recherche au scope de l'objet
  Returns:
    l'objet demande

### isDefined

    public boolean isDefined(java.lang.String name,
                             boolean scoped)

  Retourne VRAI si l'identificateur passe est deja utilise pour un autre symbole.
  Parameters:
    `name` - le nom a verifier
    `scoped` - mettre a vrai si l'on restraint la recherche au scope de l'objet
  Returns:
    retourne VRAI si l'identificateur est deja utilise

### returnObject

    public IdlObject returnObject(java.lang.String name_,
                                  boolean scoped)

  Cette methode retourne l'objet demande en fonction de son nom.
  Parameters:
    `name` - le nom de l'objet a retourner
    `scoped` - mettre a vrai si l'on restraint la recherche au scope de l'objet
  Returns:
    l'objet demande

### addIdlObject

    public void addIdlObject(IdlObject obj)

  Ajoute un objet supplementaire comme contenu de cet objet

### insertIdlObject

    public void insertIdlObject(IdlObject obj,
                                int idx)

  Insert un element

### root

    public IdlRoot root()

  Return the root IDL object.

### into

    public boolean into(int type)

  Permet de tester l'inclusion d'un type dans un autre
  Parameters:
    `type` - Le type conteneur
  Returns:
    true si l'objet est inclus dans le conteneur specifie

### contains

    public boolean contains(int type)

  Permet de tester la possession d'un type dans un autre
  Parameters:
    `type` - Le type conteneur
  Returns:
    true si l'objet est inclus dans le conteneur specifie

### type

    public IdlObject type()

  Return the member type. This method actually returns the first element from the child list. The method name is very confusing as it conflicts with the _type member.
  Returns:
    The object type !? (The first child object).

### type

    public void type(IdlObject tp)

  Set the type of the object. This method removes all child objects and adds the specified as new child.
  Parameters:
    `tp` - The type of the object !? (The first child member).

### attach_comment

    public void attach_comment()

  Attach a default comment to this object. IdlParser.idl_comment is used per default.

### attach_comment

    public void attach_comment(IdlComment comment)

  Attach the specified comment to this object.

### getComment

    public IdlComment getComment()

  Return the comment attached to this object.

### hasComment

    public boolean hasComment()

  Check whether this IDL object has a comment attached.

### sensitive

    public void sensitive(boolean s)

  Set the case sensitive mode to the passed value.

### use_diese

    public void use_diese(boolean s)

  Permet de fixer le fait de l'utilisation de #ifndef

### use_diese

    public boolean use_diese()

  Retourne si une section #ifndef est a utiliser

### opaque

    public void opaque(java.lang.Object op)

  Set the opaque object for this IDL object.

### opaque

    public java.lang.Object opaque()

  Return the opaque object for ths IDL object.

### applyPrefix

    public void applyPrefix(java.lang.String prefix)

  Apply a prefix

### changePrefix

    public void changePrefix(java.lang.String prefix)

  Change prefix to my self but also to all contained objects

### returnInheritedObject

    public IdlObject returnInheritedObject(java.lang.String name)

  This method returns an inherited object

### isSame

    public boolean isSame(java.lang.String name)

  This method returns true if this object is the same as the given name.

### sameAs

    public IdlObject sameAs(java.lang.String name)

  Return the equivalent object for the given name

### searchObject

    public IdlObject searchObject(java.lang.String name)

  This method returns an contained object

### adaptName

    public java.lang.String adaptName(java.lang.String name)

  If the adaptName flag is set remove a leading underscore.
  Parameters:
    `name` - which should be adapted.
  Returns:
    adatped name.

### idlName

    public java.lang.String idlName()

  Description copied from interface: `idlObject`
  Return the object name
  Specified by:
    `idlName` in interface `idlObject`

### idlID

    public java.lang.String idlID()

  Description copied from interface: `idlObject`
  Return the IDL ID
  Specified by:
    `idlID` in interface `idlObject`

### idlDefinedIn

    public idlObject idlDefinedIn()

  Description copied from interface: `idlObject`
  Return the defined in object
  Specified by:
    `idlDefinedIn` in interface `idlObject`

### idlType

    public int idlType()

  Description copied from interface: `idlObject`
  Return the object type
  Specified by:
    `idlType` in interface `idlObject`

### content

    public java.util.Enumeration content()

  Description copied from interface: `idlObject`
  Return this idlObject content
  Specified by:
    `content` in interface `idlObject`

### filter

    public java.util.Enumeration filter(int type)

  Description copied from interface: `idlObject`
  Return this idlObject content with a filter
  Specified by:
    `filter` in interface `idlObject`

### containsObject

    public boolean containsObject(int type)

  Description copied from interface: `idlObject`
  Return TRUE if this object contains a object type
  Specified by:
    `containsObject` in interface `idlObject`

### idlFinalType

    public int idlFinalType()

  Description copied from interface: `idlObject`
  Return the final type ( if IDENTIFIER then returns the associated idl object )
  Specified by:
    `idlFinalType` in interface `idlObject`

### idlConcreteType

    public int idlConcreteType()

  Description copied from interface: `idlObject`
  Return the concrete type ( if IDENTIFIER or TYPEDEF then returns the associated idl object )
  Specified by:
    `idlConcreteType` in interface `idlObject`