## org.openorb.compiler.ir
Class IdlFromIR

    java.lang.Object
      |
      +--org.openorb.compiler.ir.IdlFromIR

All Implemented Interfaces:
  IRImport

public class IdlFromIR
extends java.lang.Object
implements IRImport

This class provides an import mechanism to get IDL descriptions from Interface Repository.

Version:
  $Revision: 1.7 $ $Date: 2002/08/21 08:19:21 $
Author:
  Jerome Daniel

Constructor Summary
`IdlFromIR()` Constructor
`IdlFromIR(ORB orb)` Constructor

Method Summary
`boolean` `checkFromImportFromFile(java.lang.String container_name)` This operation is used to import a container from an IDL file if a link has been provided.
`IdlObject` `createContainer(Container container, IdlObject parent)` Create a new container
`IdlObject` `createOrFindScope(java.lang.String scope_name, IdlObject current_scope, Container ir_scope)` Find or create the parent scope to import description
`void` `getDescriptionFromIR(java.lang.String scope_name, IdlObject current_scope)` This method is called from the IDL parser to get an IR container description.
`IdlObject` `getType(IRObject type, IdlObject parent)` Return a data type
`void` `initialize()` Initialize ( not required if normal use : getDescriptionFromIR )
`IdlObject` `irAlias(Contained contained, IdlObject scope, boolean visible)` Add an alias description
`IdlObject` `irConstant(Contained contained, IdlObject scope, boolean visible)` Add a constant description
`IdlObject` `irContained(Contained contained, IdlObject scope, boolean visible)` Add a contained description
`IdlObject` `irContainer(Container container, IdlObject scope, boolean visible)` Add a container description
`IdlObject` `irDescription(IRObject type, IdlObject scope, boolean visible)` Add an IR description
`IdlObject` `irEnum(Contained contained, IdlObject scope, boolean visible)` Add an enum description
`IdlObject` `irException(Container container, IdlObject scope, boolean content)` Add an exception description
`IdlObject` `irInterface(Container container, IdlObject scope, boolean content, int type)` Add an interface description type : 0 = NORMAL, 1 = LOCAL, 2 = ABSTRACT
`IdlObject` `irModule(Container container, IdlObject scope, boolean content)` Add a module description
`IdlObject` `irNative(Contained contained, IdlObject scope, boolean visible)` Add an native description
`IdlObject` `irStruct(Container container, IdlObject scope, boolean content)` Add a struct description
`IdlObject` `irUnion(Container container, IdlObject scope, boolean content)` Add an union description
`IdlObject` `irValue(Container container, IdlObject scope, boolean content)` Add a value description
`IdlObject` `irValueBox(Contained contained, IdlObject scope, boolean visible)` Add a valuebox description
`void` `set_parser(IdlParser parser)` Set the parser

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

Constructor Detail

### IdlFromIR

    public IdlFromIR()

  Constructor

### IdlFromIR

    public IdlFromIR(ORB orb)

  Constructor

Method Detail

### set_parser

    public void set_parser(IdlParser parser)

  Set the parser
  Specified by:
    `set_parser` in interface `IRImport`

### initialize

    public void initialize()

  Initialize ( not required if normal use : getDescriptionFromIR )

### getDescriptionFromIR

    public void getDescriptionFromIR(java.lang.String scope_name,
                                     IdlObject current_scope)

  This method is called from the IDL parser to get an IR container description.
  Specified by:
    `getDescriptionFromIR` in interface `IRImport`

### irDescription

    public IdlObject irDescription(IRObject type,
                                   IdlObject scope,
                                   boolean visible)

  Add an IR description

### irContainer

    public IdlObject irContainer(Container container,
                                 IdlObject scope,
                                 boolean visible)

  Add a container description

### irContained

    public IdlObject irContained(Contained contained,
                                 IdlObject scope,
                                 boolean visible)

  Add a contained description

### irModule

    public IdlObject irModule(Container container,
                              IdlObject scope,
                              boolean content)

  Add a module description

### irInterface

    public IdlObject irInterface(Container container,
                                 IdlObject scope,
                                 boolean content,
                                 int type)

  Add an interface description type : 0 = NORMAL, 1 = LOCAL, 2 = ABSTRACT

### irValue

    public IdlObject irValue(Container container,
                             IdlObject scope,
                             boolean content)

  Add a value description

### irStruct

    public IdlObject irStruct(Container container,
                              IdlObject scope,
                              boolean content)

  Add a struct description

### irUnion

    public IdlObject irUnion(Container container,
                             IdlObject scope,
                             boolean content)

  Add an union description

### irException

    public IdlObject irException(Container container,
                                 IdlObject scope,
                                 boolean content)

  Add an exception description

### irEnum

    public IdlObject irEnum(Contained contained,
                            IdlObject scope,
                            boolean visible)

  Add an enum description

### irNative

    public IdlObject irNative(Contained contained,
                              IdlObject scope,
                              boolean visible)

  Add an native description

### irAlias

    public IdlObject irAlias(Contained contained,
                             IdlObject scope,
                             boolean visible)

  Add an alias description

### irValueBox

    public IdlObject irValueBox(Contained contained,
                                IdlObject scope,
                                boolean visible)

  Add a valuebox description

### irConstant

    public IdlObject irConstant(Contained contained,
                                IdlObject scope,
                                boolean visible)

  Add a constant description

### createOrFindScope

    public IdlObject createOrFindScope(java.lang.String scope_name,
                                       IdlObject current_scope,
                                       Container ir_scope)

  Find or create the parent scope to import description

### createContainer

    public IdlObject createContainer(Container container,
                                     IdlObject parent)

  Create a new container

### getType

    public IdlObject getType(IRObject type,
                             IdlObject parent)

  Return a data type

### checkFromImportFromFile

    public boolean checkFromImportFromFile(java.lang.String container_name)

  This operation is used to import a container from an IDL file if a link has been provided. Only top level import are accepted and only one level container are accepted : import ::top // OK import top::foo // NOT OK import ::top::foo // NOT OK