de.dhbwstuttgart.syntaxtree.statement

## Class LocalVarDecl

- java.lang.Object
- - de.dhbwstuttgart.syntaxtree.SyntaxTreeNode
  - - de.dhbwstuttgart.syntaxtree.statement.Statement
    - - de.dhbwstuttgart.syntaxtree.statement.LocalVarDecl

All Implemented Interfaces:
  IItemWithOffset, Typeable, TypeInsertable

    public class LocalVarDecl
    extends Statement
    implements TypeInsertable

### Field Summary

Fields
`Block` `block`
`private Menge<DeclId>` `declid`
`protected static Logger` `inferencelog`
`private java.util.Hashtable<java.lang.String,Type>` `parahash`
`private Menge` `paralist`
`protected static Logger` `parserlog`

### Fields inherited from class de.dhbwstuttgart.syntaxtree.statement.Statement

`offset, type`

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

`parent`

### Constructor Summary

Constructors
Constructor and Description
`LocalVarDecl(int offset, int variableLength)`

### Method Summary

All Methods Instance Methods Concrete Methods
`TypeInsertPoint` `createTypeInsertPoint(TypePlaceholder tph, ResultSet resultSet)` Errechnet den TypeInsertPoint fÃ¼r das TypeInsertable.
`java.lang.String` `get_Name()`
`Menge<SyntaxTreeNode>` `getChildren()`
`Menge<DeclId>` `getDeclidMenge()`
`java.lang.String` `getDescription()` Eine Beschreibung/Name des SyntaxTree-Nodes
`java.lang.String` `getIdentifier()`
`int` `getLineNumber()` Author: JÃ¯Â¿Â½rg BÃ¯Â¿Â½uerle
`int` `getOffset()` Author: Thomas Hornberger
`java.lang.String` `getTypeInformation()`
`int` `getTypeLineNumber()` Author: JÃ¯Â¿Â½rg BÃ¯Â¿Â½uerle
`void` `is_declared(Type t, Menge<Class> classlist)`
`void` `parserPostProcessing(SyntaxTreeNode parent)` Wird nach dem Parsen aufgerufen.
`JavaCodeResult` `printJavaCode(ResultSet resultSet)`
`void` `set_DeclId(DeclId did)`
`void` `set_ParaList(Menge pl)`
`void` `setDeclidMenge(Menge<DeclId> declid)`
`void` `setOffset(int offset)`
`java.lang.String` `toString()` Author: Martin PlÃ¯Â¿Â½micke
`ConstraintsSet` `TYPEStmt(TypeAssumptions assumptions)`
`void` `wandleRefTypeAttributes2GenericAttributes(Menge<Type> paralist, Menge<GenericTypeVar> genericMethodParameters)`

### Methods inherited from class de.dhbwstuttgart.syntaxtree.statement.Statement

`getReturnType, getType, getVariableLength, setReturnType, setType`

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

`addTypeInsertPoints, equals, getGTVDeclarationContext, getMatchingParentNode, getParent, getParentClass, seesType`

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

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

### Methods inherited from interface de.dhbwstuttgart.typeinference.Typeable

`getType, setType`

### Methods inherited from interface de.dhbwstuttgart.core.IItemWithOffset

`getVariableLength`

### Field Detail

#### declid

    private Menge<DeclId> declid

#### paralist

    private Menge paralist

#### parahash

    private java.util.Hashtable<java.lang.String,Type> parahash

#### inferencelog

    protected static Logger inferencelog

#### parserlog

    protected static Logger parserlog

#### block

    public Block block

### Constructor Detail

#### LocalVarDecl

    public LocalVarDecl(int offset,
                        int variableLength)

### Method Detail

#### set_DeclId

    public void set_DeclId(DeclId did)

#### get_Name

    public java.lang.String get_Name()

#### set_ParaList

    public void set_ParaList(Menge pl)

#### is_declared

    public void is_declared(Type t,
                            Menge<Class> classlist)
                     throws SCStatementException

Throws:
  `SCStatementException`

#### getDeclidMenge

    public Menge<DeclId> getDeclidMenge()

#### setDeclidMenge

    public void setDeclidMenge(Menge<DeclId> declid)

#### getLineNumber

    public int getLineNumber()

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

Returns:

#### getOffset

    public int getOffset()

Author: Thomas Hornberger

Specified by:
  `getOffset` in interface `IItemWithOffset`
Specified by:
  `getOffset` in interface `TypeInsertable`
Overrides:
  `getOffset` in class `Statement`
Returns:

#### getTypeLineNumber

    public int getTypeLineNumber()

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

Returns:

#### toString

    public java.lang.String toString()

Author: Martin PlÃ¯Â¿Â½micke

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

#### wandleRefTypeAttributes2GenericAttributes

    public void wandleRefTypeAttributes2GenericAttributes(Menge<Type> paralist,
                                                          Menge<GenericTypeVar> genericMethodParameters)

Specified by:
  `wandleRefTypeAttributes2GenericAttributes` in class `Statement`

#### TYPEStmt

    public ConstraintsSet TYPEStmt(TypeAssumptions assumptions)

Specified by:
  `TYPEStmt` in class `Statement`

#### getDescription

    public java.lang.String getDescription()

Description copied from class: `SyntaxTreeNode`
Eine Beschreibung/Name des SyntaxTree-Nodes

Overrides:
  `getDescription` in class `Statement`
Returns:

#### parserPostProcessing

    public void parserPostProcessing(SyntaxTreeNode parent)

Description copied from class: `SyntaxTreeNode`
Wird nach dem Parsen aufgerufen. ErfÃ¼llt folgenden Aufgaben: 1. FÃ¼llt fehlende Typangaben mit TPHs auf. 2. VerknÃ¼pft die Knoten des Syntaxbaums. (setzt Parent) 3. Wechselt RefTypes gegebenenfalls mit GenericTypeVars aus. 4. FÃ¼hrt einen Teil des Syntaxckecks durch.

Overrides:
  `parserPostProcessing` in class `SyntaxTreeNode`

#### getTypeInformation

    public java.lang.String getTypeInformation()

Overrides:
  `getTypeInformation` in class `Statement`
Returns:

#### printJavaCode

    public JavaCodeResult printJavaCode(ResultSet resultSet)

Specified by:
  `printJavaCode` in class `Statement`

#### setOffset

    public void setOffset(int offset)

Specified by:
  `setOffset` in interface `TypeInsertable`

#### getIdentifier

    public java.lang.String getIdentifier()

Specified by:
  `getIdentifier` in interface `TypeInsertable`

#### getChildren

    public Menge<SyntaxTreeNode> getChildren()

Specified by:
  `getChildren` in class `SyntaxTreeNode`

#### createTypeInsertPoint

    public TypeInsertPoint createTypeInsertPoint(TypePlaceholder tph,
                                                 ResultSet resultSet)

Description copied from interface: `TypeInsertable`
Errechnet den TypeInsertPoint fÃ¼r das TypeInsertable. TypeInsertPoints sollten nur Ã¼ber diese Funktion erstellt werden.

Specified by:
  `createTypeInsertPoint` in interface `TypeInsertable`
Returns:
  - kann auch null zurÃ¼ckgeben.