xtc.type
Class InternalT

java.lang.Object
  extended by xtc.tree.Node
      extended by xtc.type.Type
          extended by xtc.type.InternalT
All Implemented Interfaces:
java.lang.Iterable<java.lang.Object>, Locatable

public class InternalT
extends Type

An internal type, identified by its name.

Version:
$Revision: 1.12 $
Author:
Robert Grimm

Nested Class Summary
 
Nested classes/interfaces inherited from class xtc.type.Type
Type.Tag
 
Field Summary
static InternalT VA_LIST
          The canonical variable argument list type.
 
Constructor Summary
InternalT(java.lang.String name)
          Create a new internal type.
InternalT(Type template, java.lang.String name)
          Create a new internal type.
 
Method Summary
 InternalT copy()
          Create a deep copy of this type.
 boolean equals(java.lang.Object o)
           
 java.lang.String getName()
          Get the name.
 int hashCode()
           
 boolean isInternal()
          Determine whether this type is internal.
 Type.Tag tag()
          Get this type's tag.
 InternalT toInternal()
          Get this type as an internal type.
 java.lang.String toString()
          Return a human readable representation of this node.
 void write(java.lang.Appendable out)
          Write a human readable representation to the specified appendable.
 
Methods inherited from class xtc.type.Type
addAttribute, annotate, attribute, attribute, attribute, attributes, cast, checkNotSealed, constant, constant, copy, deannotate, getAttribute, getAttribute, getConstant, getConstant, getLanguage, getLanguage, getLocation, getLocation, getScope, getScope, getShape, getShape, hasAlias, hasAnnotated, hasAttribute, hasAttribute, hasAttribute, hasAttribute, hasAttributes, hasConstant, hasConstant, hasEnum, hasEnumerator, hasError, hasInstantiated, hasLanguage, hasLanguage, hasLocation, hasLocation, hasParameterized, hasScope, hasScope, hasShape, hasShape, hasStructOrUnion, hasTag, hasTagged, hasVariable, hasWTag, isAlias, isAnnotated, isArray, isBoolean, isClass, isConcrete, isDerived, isEnum, isEnumerator, isError, isFloat, isFunction, isInstantiated, isInteger, isInterface, isInternalParameter, isLabel, isMethod, isNamedParameter, isNumber, isPackage, isParameter, isParameterized, isPointer, isSealed, isStruct, isTuple, isUnion, isUnit, isVariable, isVariant, isVoid, isWildcard, isWrapped, language, locate, locate, mark, properties, removeAttribute, removeProperty, resolve, resolve, scope, seal, seal, setLocation, setLocation, setProperty, shape, shape, toAlias, toAnnotated, toArray, toBoolean, toClass, toEnum, toEnumerator, toFloat, toFunction, toInstantiated, toInteger, toInterface, toInternalParameter, toLabel, toMethod, toNamedParameter, toNumber, toPackage, toParameter, toParameterized, toPointer, toStruct, toStructOrUnion, toTagged, toTuple, toUnion, toUnit, toVariable, toVariant, toVoid, toWildcard, toWrapped, trace, wtag
 
Methods inherited from class xtc.tree.Node
add, add, addAll, addAll, addAll, addAll, addAllTo, addNode, contains, get, getBoolean, getBooleanProperty, getGeneric, getList, getNode, getProperty, getString, getStringProperty, getTokenText, hasName, hasProperty, hasTraversal, indexOf, isAnnotation, isEmpty, isGeneric, isList, isToken, iterator, lastIndexOf, remove, set, size, strip, toAnnotation, toList, toToken
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

VA_LIST

public static final InternalT VA_LIST
The canonical variable argument list type.

Constructor Detail

InternalT

public InternalT(java.lang.String name)
Create a new internal type.

Parameters:
name - The name.

InternalT

public InternalT(Type template,
                 java.lang.String name)
Create a new internal type.

Parameters:
template - The type whose annotations to copy.
name - The name.
Method Detail

copy

public InternalT copy()
Description copied from class: Type
Create a deep copy of this type. The resulting type is not sealed.

Specified by:
copy in class Type
Returns:
A deep copy of this type.

tag

public Type.Tag tag()
Description copied from class: Type
Get this type's tag. Invocations to this method are forwarded across wrapped types.

Specified by:
tag in class Type
Returns:
This type's tag.
See Also:
Type.wtag()

isInternal

public boolean isInternal()
Description copied from class: Type
Determine whether this type is internal.

Overrides:
isInternal in class Type
Returns:
true if this type is internal.

toInternal

public InternalT toInternal()
Description copied from class: Type
Get this type as an internal type.

Overrides:
toInternal in class Type
Returns:
This type as an internal type.

getName

public java.lang.String getName()
Get the name.

Overrides:
getName in class Node
Returns:
The name.

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object

write

public void write(java.lang.Appendable out)
           throws java.io.IOException
Description copied from class: Node
Write a human readable representation to the specified appendable. If this node supports generic traversal, the default implementation writes this node in algebraic term-format; otherwise, it writes the string returned by Object.toString().

Overrides:
write in class Node
Parameters:
out - The appendable.
Throws:
java.io.IOException - Signals an I/O error.

toString

public java.lang.String toString()
Description copied from class: Node
Return a human readable representation of this node. The default implementation creates a new string builder, writes this node to the builder, and then returns the corresponding string. Subclasses should typically override Node.write(Appendable).

Overrides:
toString in class Node
Returns:
A human readable representation.


Copyright © 2012. All Rights Reserved.