org.jacorb.idl
Class ArrayTypeSpec
java.lang.Object
org.jacorb.idl.runtime.symbol
org.jacorb.idl.IdlSymbol
org.jacorb.idl.TypeSpec
org.jacorb.idl.VectorType
org.jacorb.idl.ArrayTypeSpec
public class ArrayTypeSpec
- extends VectorType
- Version:
- $Id: ArrayTypeSpec.java,v 1.29 2004/05/06 12:39:58 nicolas Exp $
- Author:
- Gerald Brose
|
Field Summary |
protected boolean |
typedefd
|
|
Constructor Summary |
ArrayTypeSpec(int num,
TypeSpec elem,
org.jacorb.idl.ArrayDeclarator ad,
java.lang.String pack_name)
|
| Methods inherited from class org.jacorb.idl.IdlSymbol |
accept, addImportedAlias, addImportedName, addImportedName, addImportedNameHolder, deEscapeName, escapeName, generateIncluded, get_token, getEnclosingSymbol, id, is_included, is_pseudo, isEscaped, name, new_num, omgPrefix, printIdMethod, printImport, set_name, set_pseudo, set_token, setPrintPhaseNames |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
typedefd
protected boolean typedefd
ArrayTypeSpec
public ArrayTypeSpec(int num,
TypeSpec elem,
org.jacorb.idl.ArrayDeclarator ad,
java.lang.String pack_name)
clone
public java.lang.Object clone()
- clone this ArrayTypeSpec. The cloned object will not be parsed again.
- Overrides:
clone in class TypeSpec
setEnclosingSymbol
public void setEnclosingSymbol(IdlSymbol s)
- Overrides:
setEnclosingSymbol in class TypeSpec
typeSpec
public TypeSpec typeSpec()
- Overrides:
typeSpec in class TypeSpec
setPackage
public void setPackage(java.lang.String s)
- Overrides:
setPackage in class TypeSpec
markTypeDefd
public void markTypeDefd()
- we have to be able to distinguish between explicitly typedef'd
type names and anonymously defined type names
parse
public void parse()
throws ParseException
- Description copied from class:
IdlSymbol
- empty parse
- Throws:
ParseException
getTypeCodeExpression
public java.lang.String getTypeCodeExpression()
- Overrides:
getTypeCodeExpression in class TypeSpec
- Returns:
- a string for an expression of type TypeCode that
describes this type
Array and sequence types always have this expression inlined in
their containing classes because arrays and sequences can be
locally defined (e,g, in a struct) without there being helper
classes (so Helper.type() is not an option)
helperName
public java.lang.String helperName()
- Specified by:
helperName in class VectorType
holderName
public java.lang.String holderName()
- Specified by:
holderName in class VectorType
className
public java.lang.String className()
length
public int length()
- Specified by:
length in class VectorType
- Returns:
- the length of this array or sequence. For
multi-dimensional vectors, this is the outermost dimension.
For open sequences, this length is 0.
printReadStatement
public java.lang.String printReadStatement(java.lang.String var_name,
java.lang.String streamname)
- Overrides:
printReadStatement in class TypeSpec
printWriteStatement
public java.lang.String printWriteStatement(java.lang.String var_name,
java.lang.String streamname)
- Overrides:
printWriteStatement in class TypeSpec
print
public void print(java.io.PrintWriter _ps)
- Overrides:
print in class TypeSpec
basic
public boolean basic()
- Overrides:
basic in class TypeSpec
- Returns:
- true if this is a basic type