de.dhbwstuttgart.syntaxtree

## Class Field

- java.lang.Object
- - de.dhbwstuttgart.syntaxtree.SyntaxTreeNode
  - - de.dhbwstuttgart.syntaxtree.GTVDeclarationContext
    - - de.dhbwstuttgart.syntaxtree.Field

- All Implemented Interfaces:
    IItemWithOffset, Generic, GenericTypeInsertable, Typeable, TypeInsertable
  Direct Known Subclasses:
    FieldDeclaration, Method

      public abstract class Field
      extends GTVDeclarationContext
      implements TypeInsertable, Typeable, Generic, GenericTypeInsertable

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected Menge<DeclId>` | `declid`
    `private GenericDeclarationList` | `genericParameters`
    `private int` | `offset`
    `private Type` | `typ`

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

      `parent`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Field(int offset)`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract TypeAssumptions` | `createTypeAssumptions(Class classmember)` Diese Methode generiert die Assumptions fÃ¼r dieses Feld der Klasse classmember
    `TypeInsertPoint` | `createTypeInsertPoint(TypePlaceholder tph, ResultSet resultSet)` Errechnet den TypeInsertPoint fÃ¼r das TypeInsertable.
    `Menge<DeclId>` | `get_Name()`
    `Menge<SyntaxTreeNode>` | `getChildren()`
    `Menge<DeclId>` | `getDeclIdMenge()`
    `java.lang.String` | `getDescription()` Eine Beschreibung/Name des SyntaxTree-Nodes
    `(package private) GenericDeclarationList` | `getGenericDeclarationList()`
    `Menge<GenericTypeVar>` | `getGenericParameter()`
    `int` | `getGenericVarDeclarationOffset()`
    `java.lang.String` | `getGenericVarDeclarationString(java.lang.String genericVarDeclaration)`
    `java.lang.String` | `getIdentifier()`
    `int` | `getOffset()`
    `Type` | `getType()`
    `boolean` | `isClass()`
    `boolean` | `isPublic()`
    `abstract JavaCodeResult` | `printJavaCode(ResultSet resultSet)`
    `void` | `set_DeclId(DeclId did)`
    `void` | `setDeclIdMenge(Menge<DeclId> vDeclId)`
    `void` | `setGenericParameter(GenericDeclarationList params)`
    `void` | `setOffset(int offset)`
    `void` | `setType(Type typ)`
    `abstract ConstraintsSet` | `TYPE(TypeAssumptions publicAssumptions)`
    `void` | `wandleRefTypeAttributes2GenericAttributes(Menge<Type> paralist)` Wird im Zuge des ParserPostProcessing aufgerufen.

    - ### Methods inherited from class de.dhbwstuttgart.syntaxtree.GTVDeclarationContext

      `getGTVDeclarationContext`

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

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

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

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

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

      `getVariableLength`

- - ### Field Detail

    - #### declid

          protected Menge<DeclId> declid

    - #### typ

          private Type typ

    - #### offset

          private int offset

    - #### genericParameters

          private GenericDeclarationList genericParameters

  - ### Constructor Detail

    - #### Field

          public Field(int offset)

  - ### Method Detail

    - #### setOffset

          public void setOffset(int offset)

      Specified by:
        `setOffset` in interface `TypeInsertable`

    - #### getOffset

          public int getOffset()

      Specified by:
        `getOffset` in interface `IItemWithOffset`
      Specified by:
        `getOffset` in interface `TypeInsertable`

    - #### setType

          public void setType(Type typ)

      Specified by:
        `setType` in interface `Typeable`
      Parameters:
        `typ` - Der Typ der Typable-Expression/Statement

    - #### getType

          public Type getType()

      Specified by:
        `getType` in interface `Typeable`

    - #### getGenericParameter

          public Menge<GenericTypeVar> getGenericParameter()

      Specified by:
        `getGenericParameter` in interface `Generic`

    - #### getGenericDeclarationList

          GenericDeclarationList getGenericDeclarationList()

    - #### set_DeclId

          public void set_DeclId(DeclId did)

    - #### get_Name

          public Menge<DeclId> get_Name()

    - #### getDeclIdMenge

          public Menge<DeclId> getDeclIdMenge()

    - #### setDeclIdMenge

          public void setDeclIdMenge(Menge<DeclId> vDeclId)

    - #### printJavaCode

          public abstract JavaCodeResult printJavaCode(ResultSet resultSet)

    - #### createTypeAssumptions

          public abstract TypeAssumptions createTypeAssumptions(Class classmember)

      Diese Methode generiert die Assumptions fÃ¼r dieses Feld der Klasse classmember
      Parameters:
        `classmember` -
      Returns:

    - #### TYPE

          public abstract ConstraintsSet TYPE(TypeAssumptions publicAssumptions)

    - #### getIdentifier

          public java.lang.String getIdentifier()

      Specified by:
        `getIdentifier` in interface `TypeInsertable`

    - #### getDescription

          public java.lang.String getDescription()

      Description copied from class: `SyntaxTreeNode`
      Eine Beschreibung/Name des SyntaxTree-Nodes
      Overrides:
        `getDescription` in class `SyntaxTreeNode`
      Returns:

    - #### 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.

    - #### wandleRefTypeAttributes2GenericAttributes

          public void wandleRefTypeAttributes2GenericAttributes(Menge<Type> paralist)

      Wird im Zuge des ParserPostProcessing aufgerufen. Der Parser kann den Unterschied zwischen einem RefType und einer GTV nicht erkennen. Diese Methode ersetzt die RefTypes gegebenenfalls durch eine GTV.
      Parameters:
        `paralist` -

    - #### isPublic

          public boolean isPublic()

    - #### getGenericVarDeclarationString

          public java.lang.String getGenericVarDeclarationString(java.lang.String genericVarDeclaration)

      Specified by:
        `getGenericVarDeclarationString` in interface `GenericTypeInsertable`

    - #### getGenericVarDeclarationOffset

          public int getGenericVarDeclarationOffset()

      Specified by:
        `getGenericVarDeclarationOffset` in interface `GenericTypeInsertable`

    - #### getChildren

          public Menge<SyntaxTreeNode> getChildren()

      Specified by:
        `getChildren` in class `SyntaxTreeNode`

    - #### setGenericParameter

          public void setGenericParameter(GenericDeclarationList params)

      Specified by:
        `setGenericParameter` in interface `Generic`

    - #### isClass

          public boolean isClass()

      Specified by:
        `isClass` in class `GTVDeclarationContext`