it.csi.mddtools.guigen

## Interface ComplexType

- All Superinterfaces:
    org.eclipse.emf.ecore.EObject, org.eclipse.emf.common.notify.Notifier, Type

      public interface ComplexType
      extends Type

  A representation of the model object 'Complex Type'. Struttura dati definita da utente. Nel caso di questa sottoclasse di Type l'attributo name deve essere un identificativo valido per java.

  The following features are supported:

  - `Fields`
  - `Init Fields`
  - `Extends`
  - `Type Annotation`
  See Also:
    `GuigenPackage.getComplexType()`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `org.eclipse.emf.common.util.EList<Field>` | `getAllFields()`
    `ComplexType` | `getExtends()` Returns the value of the 'Extends' reference
    `org.eclipse.emf.common.util.EList<Field>` | `getFields()` Returns the value of the 'Fields' containment reference list.
    `org.eclipse.emf.common.util.EList<TypeAnnotation>` | `getTypeAnnotation()` Returns the value of the 'Type Annotation' containment reference list.
    `boolean` | `isInitFields()` Returns the value of the 'Init Fields' attribute.
    `void` | `setExtends(ComplexType value)` Sets the value of the '`Extends`' reference
    `void` | `setInitFields(boolean value)` Sets the value of the '`Init Fields`' attribute

    - ### Methods inherited from interface it.csi.mddtools.guigen.Type

      `getName, setName`

    - ### Methods inherited from interface org.eclipse.emf.ecore.EObject

      `eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset`

    - ### Methods inherited from interface org.eclipse.emf.common.notify.Notifier

      `eAdapters, eDeliver, eNotify, eSetDeliver`

- - ### Method Detail

    - #### getFields

          org.eclipse.emf.common.util.EList<Field> getFields()

      Returns the value of the 'Fields' containment reference list. The list contents are of type `Field`.

      If the meaning of the 'Fields' containment reference list isn't clear, there really should be more of a description here...

      Insieme dei campi di cui è costituita la struttura dati.
      Returns:
        the value of the 'Fields' containment reference list.
      See Also:
        `GuigenPackage.getComplexType_Fields()`

    - #### isInitFields

          boolean isInitFields()

      Returns the value of the 'Init Fields' attribute. The default value is `"false"`.

      If the meaning of the 'Init Fields' attribute isn't clear, there really should be more of a description here...

      Se impostato a true, i field di tipo complex sono inizializzati (con struttura vuota al momento dell'istaziazione di oggetti di questo tipo). Es. Se un tipo "Persona" contiene un field "residenza" di tipo "Indirizzo" e initFields è impostato a true, allora il field "residenza" viene impostato con un'oggetto di tipo "Indirizzo".
      Returns:
        the value of the 'Init Fields' attribute.
      See Also:
        `setInitFields(boolean)`, `GuigenPackage.getComplexType_InitFields()`

    - #### setInitFields

          void setInitFields(boolean value)

      Sets the value of the '`Init Fields`' attribute.
      Parameters:
        `value` - the new value of the 'Init Fields' attribute.
      See Also:
        `isInitFields()`

    - #### getExtends

          ComplexType getExtends()

      Returns the value of the 'Extends' reference.

      If the meaning of the 'Extends' reference isn't clear, there really should be more of a description here...

      Returns:
        the value of the 'Extends' reference.
      See Also:
        `setExtends(ComplexType)`, `GuigenPackage.getComplexType_Extends()`

    - #### setExtends

          void setExtends(ComplexType value)

      Sets the value of the '`Extends`' reference.
      Parameters:
        `value` - the new value of the 'Extends' reference.
      See Also:
        `getExtends()`

    - #### getTypeAnnotation

          org.eclipse.emf.common.util.EList<TypeAnnotation> getTypeAnnotation()

      Returns the value of the 'Type Annotation' containment reference list. The list contents are of type `TypeAnnotation`.

      If the meaning of the 'Type Annotation' containment reference list isn't clear, there really should be more of a description here...

      Returns:
        the value of the 'Type Annotation' containment reference list.
      See Also:
        `GuigenPackage.getComplexType_TypeAnnotation()`

    - #### getAllFields

          org.eclipse.emf.common.util.EList<Field> getAllFields()