de.dhbwstuttgart.syntaxtree.type

## Class Type

- java.lang.Object
- - de.dhbwstuttgart.syntaxtree.SyntaxTreeNode
  - - de.dhbwstuttgart.syntaxtree.type.Type

All Implemented Interfaces:
  IItemWithOffset

Direct Known Subclasses:
  BaseType, FreshWildcardType, ObjectType, ReturnType, WildcardType

    public abstract class Type
    extends SyntaxTreeNode
    implements IItemWithOffset

### Field Summary

Fields
`protected JavaClassName` `name`
`private int` `offset`
`protected UsedId` `used`

### Fields inherited from class de.dhbwstuttgart.syntaxtree.SyntaxTreeNode

`parent`

### Constructor Summary

Constructors
`` `Type(java.lang.String s, SyntaxTreeNode parent, int offset)`
`protected` `Type(SyntaxTreeNode parent, int offset)`

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`Type` `applyResultSet(ResultSet result)`
`Type` `checkTYPE(TypeAssumptions ass, SyntaxTreeNode method)`
`abstract Type` `clone()` Author: JÃ¯Â¿Â½rg BÃ¯Â¿Â½uerle
`boolean` `equals(java.lang.Object obj)` Author: JÃ¯Â¿Â½rg BÃ¯Â¿Â½uerle
`java.lang.String` `get_Name()`
`UsedId` `get_UsedId()`
`Menge<SyntaxTreeNode>` `getChildren()`
`Menge<TypePlaceholder>` `getInvolvedTypePlaceholder()` Sammelt alle TypePlaceholder, welche in diesem Typ vorkommen.
`JavaClassName` `getName()`
`int` `getOffset()`
`java.lang.String` `getSimpleName()` HOTI Liefert bei Klassen die fullyQualified angegeben wurden nur den schlussendlichen Bezeichner p.ex. de.dhbwstuttgart.typeinference.Menge => Menge
`java.util.ArrayList<SuperWildcardType>` `getSuperWildcardTypes()` Liefert alle SuperWildcardTypes, die in diesem Typ enthalten sind.
`Menge<TypePlaceholder>` `getUnresolvedTPH(ResultSet resultSet)` Sucht nach TPHs in diesem Typ, denen das resultSet keinen Typ zuordnen kann.
`int` `getVariableLength()`
`boolean` `involves(TypePlaceholder tph)` PrÃ¼ft ob der Typ von dem Ã¼bergebenen TypPlaceholder abhÃ¤ngt.
`JavaCodeResult` `printJavaCode(ResultSet resultSet)`
`void` `set_UsedId(UsedId uid)`
`void` `setOffset(int offset)`
`java.lang.String` `toString()` Author: JÃ¯Â¿Â½rg BÃ¯Â¿Â½uerle
`ConstraintType` `TYPE(TypeAssumptions ass, SyntaxTreeNode parent)` PrÃ¼ft ob der Typ in den Assumptions ass vorhanden ist.
`java.lang.String` `Type2Key()`
`java.lang.String` `Type2String()`

### Methods inherited from class de.dhbwstuttgart.syntaxtree.SyntaxTreeNode

`addTypeInsertPoints, getDescription, getGTVDeclarationContext, getMatchingParentNode, getParent, getParentClass, parserPostProcessing, seesType`

### Methods inherited from class java.lang.Object

`finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### name

    protected JavaClassName name

#### used

    protected UsedId used

#### offset

    private int offset

### Constructor Detail

#### Type

    public Type(java.lang.String s,
                SyntaxTreeNode parent,
                int offset)

#### Type

    protected Type(SyntaxTreeNode parent,
                   int offset)

### Method Detail

#### getOffset

    public int getOffset()

Specified by:
  `getOffset` in interface `IItemWithOffset`

#### setOffset

    public void setOffset(int offset)

#### getVariableLength

    public int getVariableLength()

Specified by:
  `getVariableLength` in interface `IItemWithOffset`

#### set_UsedId

    public void set_UsedId(UsedId uid)

#### get_UsedId

    public UsedId get_UsedId()

#### get_Name

    public java.lang.String get_Name()

#### Type2String

    public java.lang.String Type2String()

#### Type2Key

    public java.lang.String Type2Key()

#### getName

    public JavaClassName getName()

#### equals

    public boolean equals(java.lang.Object obj)

Author: JÃ¯Â¿Â½rg BÃ¯Â¿Â½uerle

Overrides:
  `equals` in class `SyntaxTreeNode`
Parameters:
  `Object` -
Returns:

#### clone

    public abstract Type clone()

Author: JÃ¯Â¿Â½rg BÃ¯Â¿Â½uerle

Overrides:
  `clone` in class `java.lang.Object`
Returns:
  // ino.end // ino.method.clone.26768.definition public Type clone() // ino.end // ino.method.clone.26768.body { return new RefType(this.getName().toString(), this.getParent(),getOffset()); } // ino.end

#### toString

    public java.lang.String toString()

Author: JÃ¯Â¿Â½rg BÃ¯Â¿Â½uerle

Overrides:
  `toString` in class `java.lang.Object`
Returns:

#### getSimpleName

    public java.lang.String getSimpleName()

HOTI Liefert bei Klassen die fullyQualified angegeben wurden nur den schlussendlichen Bezeichner p.ex. de.dhbwstuttgart.typeinference.Menge => Menge

Returns:

#### printJavaCode

    public JavaCodeResult printJavaCode(ResultSet resultSet)

#### applyResultSet

    public Type applyResultSet(ResultSet result)

#### getSuperWildcardTypes

    public java.util.ArrayList<SuperWildcardType> getSuperWildcardTypes()

Liefert alle SuperWildcardTypes, die in diesem Typ enthalten sind.

Returns:

#### getUnresolvedTPH

    public Menge<TypePlaceholder> getUnresolvedTPH(ResultSet resultSet)

Sucht nach TPHs in diesem Typ, denen das resultSet keinen Typ zuordnen kann.

Parameters:
  `resultSet` -
Returns:

#### involves

    public boolean involves(TypePlaceholder tph)

PrÃ¼ft ob der Typ von dem Ã¼bergebenen TypPlaceholder abhÃ¤ngt.

Parameters:
  `tph` -
Returns:

#### TYPE

    public ConstraintType TYPE(TypeAssumptions ass,
                               SyntaxTreeNode parent)

PrÃ¼ft ob der Typ in den Assumptions ass vorhanden ist. Dabei kann eine neue Instanz eines Typs entstehen, welche von der Methode zurÃ¼ckgegeben wird.

Parameters:
  `ass` - - Die Assumptions fÃ¼r den jeweiligen Kontext in dem sich der Typ befindet. public ConstraintType checkType(TypeAssumptions ass, SyntaxTreeNode parent){ ConstraintType t = ass.getTypeFor(this, this); if(t==null) throw new TypeinferenceException("Der Typ "+this.getName()+" ist nicht korrekt", parent); return t; }

#### getInvolvedTypePlaceholder

    public Menge<TypePlaceholder> getInvolvedTypePlaceholder()

Sammelt alle TypePlaceholder, welche in diesem Typ vorkommen.

Returns:

#### getChildren

    public Menge<SyntaxTreeNode> getChildren()

Specified by:
  `getChildren` in class `SyntaxTreeNode`

#### checkTYPE

    public Type checkTYPE(TypeAssumptions ass,
                          SyntaxTreeNode method)