de.dhbwstuttgart.syntaxtree.type

## Class BaseType

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

All Implemented Interfaces:
  IItemWithOffset

Direct Known Subclasses:
  BooleanType, CharacterType, DoubleType, FloatType, IntegerType, LongType

    public abstract class BaseType
    extends Type

### Field Summary

Fields
`private boolean` `IsArray` Ist IsArray auf true, muss beim Codegen ein Zeichen [ gesetzt werden Bsp.: 15| tag = CONSTANT_Utf8, length = 22, ([Ljava/lang/String;)V Ist IsArray auf false, muss beim Codegen ein Zeichen [ gesetzt werden Bsp.: 9| tag = CONSTANT_Utf8, length = 21, (Ljava/lang/String;)V

### Fields inherited from class de.dhbwstuttgart.syntaxtree.type.Type

`name, used`

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

`parent`

### Constructor Summary

Constructors
Constructor and Description
`BaseType(java.lang.String name, SyntaxTreeNode parent, int offset)`
`BaseType(SyntaxTreeNode parent, int offset)`

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`abstract BaseType` `clone()` Author: JÃ¯Â¿Â½rg BÃ¯Â¿Â½uerle
`boolean` `equals(java.lang.Object obj)` Author: JÃ¯Â¿Â½rg BÃ¯Â¿Â½uerle
`boolean` `IsArray()` Author: Daniel Feinler Handelt ab, ob der Typ eines Objekts ein Array ist, wenn true dann wird im Bytecode ein flag gesetzt wenn nicht, dann halt nicht.
`void` `setArray(boolean IsArray)` Author: Daniel Feinler Handelt ab, ob der Typ eines Objekts ein Array ist, wenn true dann wird im Bytecode ein flag gesetzt wenn nicht, dann halt nicht.
`ConstraintType` `TYPE(TypeAssumptions ass, SyntaxTreeNode parent)` PrÃ¼ft ob der Typ in den Assumptions ass vorhanden ist.

### Methods inherited from class de.dhbwstuttgart.syntaxtree.type.Type

`applyResultSet, checkTYPE, get_Name, get_UsedId, getChildren, getInvolvedTypePlaceholder, getName, getOffset, getSimpleName, getSuperWildcardTypes, getUnresolvedTPH, getVariableLength, involves, printJavaCode, set_UsedId, setOffset, toString, Type2Key, 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

#### IsArray

    private boolean IsArray

Ist IsArray auf true, muss beim Codegen ein Zeichen [ gesetzt werden Bsp.: 15| tag = CONSTANT_Utf8, length = 22, ([Ljava/lang/String;)V Ist IsArray auf false, muss beim Codegen ein Zeichen [ gesetzt werden Bsp.: 9| tag = CONSTANT_Utf8, length = 21, (Ljava/lang/String;)V

### Constructor Detail

#### BaseType

    public BaseType(SyntaxTreeNode parent,
                    int offset)

#### BaseType

    public BaseType(java.lang.String name,
                    SyntaxTreeNode parent,
                    int offset)

### Method Detail

#### equals

    public boolean equals(java.lang.Object obj)

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

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

#### clone

    public abstract BaseType clone()

Description copied from class: `Type`
Author: JÃ¯Â¿Â½rg BÃ¯Â¿Â½uerle

Specified by:
  `clone` in class `Type`
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

#### IsArray

    public boolean IsArray()

Author: Daniel Feinler
Handelt ab, ob der Typ eines Objekts ein Array ist, wenn true dann wird im Bytecode ein flag gesetzt wenn nicht, dann halt nicht.

Returns:
  the IsArray

#### setArray

    public void setArray(boolean IsArray)

Author: Daniel Feinler
Handelt ab, ob der Typ eines Objekts ein Array ist, wenn true dann wird im Bytecode ein flag gesetzt wenn nicht, dann halt nicht.

Parameters:
  `IsArray` - the IsArray to set

#### TYPE

    public ConstraintType TYPE(TypeAssumptions ass,
                               SyntaxTreeNode parent)

Description copied from class: `Type`
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.

Overrides:
  `TYPE` in class `Type`
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; }