Package org.eclipse.m2m.atl.emftvm.impl

## Class LocalVariableImpl

- java.lang.Object
- - org.eclipse.emf.common.notify.impl.BasicNotifierImpl
  - - org.eclipse.emf.ecore.impl.BasicEObjectImpl
    - - org.eclipse.emf.ecore.impl.EObjectImpl
      - - org.eclipse.m2m.atl.emftvm.impl.NamedElementImpl
        - - org.eclipse.m2m.atl.emftvm.impl.TypedElementImpl
          - - org.eclipse.m2m.atl.emftvm.impl.LocalVariableImpl

All Implemented Interfaces:
  `org.eclipse.emf.common.notify.Notifier`, `org.eclipse.emf.ecore.EObject`, `org.eclipse.emf.ecore.InternalEObject`, `LocalVariable`, `NamedElement`, `TypedElement`

    public class LocalVariableImpl
    extends TypedElementImpl
    implements LocalVariable

An implementation of the model object 'Local Variable'.

### Nested Class Summary

### Nested classes/interfaces inherited from class org.eclipse.emf.ecore.impl.BasicEObjectImpl

`org.eclipse.emf.ecore.impl.BasicEObjectImpl.EPropertiesHolder, org.eclipse.emf.ecore.impl.BasicEObjectImpl.EPropertiesHolderBaseImpl, org.eclipse.emf.ecore.impl.BasicEObjectImpl.EPropertiesHolderImpl`

### Nested classes/interfaces inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl

`org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EAdapterList<E extends java.lang.Object & org.eclipse.emf.common.notify.Adapter>, org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EObservableAdapterList, org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EScannableAdapterList`

### Nested classes/interfaces inherited from interface org.eclipse.emf.ecore.InternalEObject

`org.eclipse.emf.ecore.InternalEObject.EStore`

### Field Summary

Fields
`protected static int` `END_INSTRUCTION_INDEX_EDEFAULT` The default value of the '`End Instruction Index`' attribute.
`protected Instruction` `endInstruction` The cached value of the '`End Instruction`' reference.
`protected int` `endInstructionIndex` The cached value of the '`End Instruction Index`' attribute.
`protected int` `slot` The cached value of the '`Slot`' attribute.
`protected static int` `SLOT_EDEFAULT` The default value of the '`Slot`' attribute.
`protected static int` `START_INSTRUCTION_INDEX_EDEFAULT` The default value of the '`Start Instruction Index`' attribute.
`protected Instruction` `startInstruction` The cached value of the '`Start Instruction`' reference.
`protected int` `startInstructionIndex` The cached value of the '`Start Instruction Index`' attribute.

### Fields inherited from class org.eclipse.m2m.atl.emftvm.impl.TypedElementImpl

`eType, type, TYPE_EDEFAULT, TYPE_MODEL_EDEFAULT, typeModel`

### Fields inherited from class org.eclipse.m2m.atl.emftvm.impl.NamedElementImpl

`name, NAME_EDEFAULT`

### Fields inherited from class org.eclipse.emf.ecore.impl.EObjectImpl

`eAdapters, eContainer, eContainerFeatureID, EDELIVER, EDYNAMIC_CLASS, eFlags, ELAST_EOBJECT_FLAG, ELAST_NOTIFIER_FLAG, eProperties, EPROXY`

### Fields inherited from class org.eclipse.emf.ecore.impl.BasicEObjectImpl

`EVIRTUAL_GET, EVIRTUAL_IS_SET, EVIRTUAL_NO_VALUE, EVIRTUAL_SET, EVIRTUAL_UNSET`

### Fields inherited from interface org.eclipse.emf.ecore.InternalEObject

`EOPPOSITE_FEATURE_BASE`

### Constructor Summary

Constructors
`protected` `LocalVariableImpl()` Creates a new `LocalVariableImpl`.

### Method Summary

All Methods Instance Methods Concrete Methods
`Instruction` `basicGetEndInstruction()`
`Instruction` `basicGetStartInstruction()`
`org.eclipse.emf.common.notify.NotificationChain` `basicSetOwningBlock​(CodeBlock newOwningBlock, org.eclipse.emf.common.notify.NotificationChain msgs)`
`org.eclipse.emf.common.notify.NotificationChain` `eBasicRemoveFromContainerFeature​(org.eclipse.emf.common.notify.NotificationChain msgs)`
`java.lang.Object` `eGet​(int featureID, boolean resolve, boolean coreType)`
`org.eclipse.emf.common.notify.NotificationChain` `eInverseAdd​(org.eclipse.emf.ecore.InternalEObject otherEnd, int featureID, org.eclipse.emf.common.notify.NotificationChain msgs)`
`org.eclipse.emf.common.notify.NotificationChain` `eInverseRemove​(org.eclipse.emf.ecore.InternalEObject otherEnd, int featureID, org.eclipse.emf.common.notify.NotificationChain msgs)`
`boolean` `eIsSet​(int featureID)`
`void` `eSet​(int featureID, java.lang.Object newValue)`
`protected org.eclipse.emf.ecore.EClass` `eStaticClass()` Returns the `EClass` that correspond to this metaclass.
`void` `eUnset​(int featureID)`
`Instruction` `getEndInstruction()` Returns the value of the 'End Instruction' reference.
`int` `getEndInstructionIndex()` Returns the value of the 'End Instruction Index' attribute.
`CodeBlock` `getOwningBlock()` Returns the value of the 'Owning Block' container reference.
`int` `getSlot()` Returns the value of the 'Slot' attribute.
`Instruction` `getStartInstruction()` Returns the value of the 'Start Instruction' reference.
`int` `getStartInstructionIndex()` Returns the value of the 'Start Instruction Index' attribute.
`void` `setEndInstruction​(Instruction newEndInstruction)` Sets the value of the '`End Instruction`' reference.
`void` `setEndInstructionIndex​(int newEndInstructionIndex)` Sets the value of the '`End Instruction Index`' attribute.
`void` `setOwningBlock​(CodeBlock newOwningBlock)` Sets the value of the '`Owning Block`' container reference.
`void` `setSlot​(int newSlot)` Sets the value of the '`Slot`' attribute.
`void` `setStartInstruction​(Instruction newStartInstruction)` Sets the value of the '`Start Instruction`' reference.
`void` `setStartInstructionIndex​(int newStartInstructionIndex)` Sets the value of the '`Start Instruction Index`' attribute.
`java.lang.String` `toString()`

### Methods inherited from class org.eclipse.m2m.atl.emftvm.impl.TypedElementImpl

`basicGetEType, getEType, getType, getTypeModel, setEType, setType, setTypeModel`

### Methods inherited from class org.eclipse.m2m.atl.emftvm.impl.NamedElementImpl

`getName, setName`

### Methods inherited from class org.eclipse.emf.ecore.impl.EObjectImpl

`eAdapters, eBasicAdapters, eBasicProperties, eBasicSetContainer, eClass, eContainerFeatureID, eDeliver, eInternalContainer, eInvoke, eIsProxy, eProperties, eSetClass, eSetDeliver, eSetProxyURI`

### Methods inherited from class org.eclipse.emf.ecore.impl.BasicEObjectImpl

`eAddVirtualValue, eAllContents, eBaseStructuralFeatureID, eBasicRemoveFromContainer, eBasicSetContainer, eComputeVirtualValuesCapacity, eContainer, eContainerAdapterArray, eContainingFeature, eContainmentFeature, eContainmentFeature, eContains, eContents, eCrossReferences, eDerivedOperationID, eDerivedOperationID, eDerivedStructuralFeatureID, eDerivedStructuralFeatureID, eDirectResource, eDynamicBasicRemoveFromContainer, eDynamicClass, eDynamicFeature, eDynamicFeatureID, eDynamicGet, eDynamicGet, eDynamicGet, eDynamicInverseAdd, eDynamicInverseAdd, eDynamicInverseRemove, eDynamicInverseRemove, eDynamicInvoke, eDynamicInvoke, eDynamicIsSet, eDynamicIsSet, eDynamicIsSet, eDynamicSet, eDynamicSet, eDynamicSet, eDynamicUnset, eDynamicUnset, eDynamicUnset, eGet, eGet, eGet, eHasSettings, eInternalResource, eInverseAdd, eInverseRemove, eInvocationDelegate, eInvoke, eIsSet, eObjectForURIFragmentSegment, eOpenGet, eOpenIsSet, eOpenSet, eOpenUnset, eProxyURI, eRemoveVirtualValue, eResolveProxy, eResource, eSet, eSetDirectResource, eSetResource, eSetStore, eSetting, eSettingDelegate, eSettings, eSetVirtualIndexBits, eSetVirtualValue, eSetVirtualValues, eStaticFeatureCount, eStaticOperationCount, eStore, eUnset, eURIFragmentSegment, eVirtualBitCount, eVirtualGet, eVirtualGet, eVirtualIndex, eVirtualIndexBits, eVirtualIsSet, eVirtualSet, eVirtualUnset, eVirtualValue, eVirtualValues`

### Methods inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl

`eBasicAdapterArray, eBasicHasAdapters, eNotificationRequired, eNotify`

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

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

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

`eNotificationRequired`

### Methods inherited from interface org.eclipse.m2m.atl.emftvm.NamedElement

`getName, setName`

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

`eAdapters, eDeliver, eNotify, eSetDeliver`

### Methods inherited from interface org.eclipse.m2m.atl.emftvm.TypedElement

`getEType, getType, getTypeModel, setEType, setType, setTypeModel`

### Field Detail

#### SLOT_EDEFAULT

    protected static final int SLOT_EDEFAULT

The default value of the '`Slot`' attribute.

See Also:
  `getSlot()`, Constant Field Values

#### slot

    protected int slot

The cached value of the '`Slot`' attribute.

See Also:
  `getSlot()`

#### startInstruction

    protected Instruction startInstruction

The cached value of the '`Start Instruction`' reference.

See Also:
  `getStartInstruction()`

#### endInstruction

    protected Instruction endInstruction

The cached value of the '`End Instruction`' reference.

See Also:
  `getEndInstruction()`

#### START_INSTRUCTION_INDEX_EDEFAULT

    protected static final int START_INSTRUCTION_INDEX_EDEFAULT

The default value of the '`Start Instruction Index`' attribute.

See Also:
  `getStartInstructionIndex()`, Constant Field Values

#### END_INSTRUCTION_INDEX_EDEFAULT

    protected static final int END_INSTRUCTION_INDEX_EDEFAULT

The default value of the '`End Instruction Index`' attribute.

See Also:
  `getEndInstructionIndex()`, Constant Field Values

#### startInstructionIndex

    protected int startInstructionIndex

The cached value of the '`Start Instruction Index`' attribute.

See Also:
  `getStartInstructionIndex()`

#### endInstructionIndex

    protected int endInstructionIndex

The cached value of the '`End Instruction Index`' attribute.

See Also:
  `getEndInstructionIndex()`

### Constructor Detail

#### LocalVariableImpl

    protected LocalVariableImpl()

Creates a new `LocalVariableImpl`.

### Method Detail

#### eStaticClass

    protected org.eclipse.emf.ecore.EClass eStaticClass()

Returns the `EClass` that correspond to this metaclass.

Overrides:
  `eStaticClass` in class `TypedElementImpl`
Returns:
  the `EClass` that correspond to this metaclass.

#### getSlot

    public int getSlot()

Returns the value of the 'Slot' attribute. The default value is `"-1"`.

Automatically assigns a free slot for local variables without a slot. Verifies that previous overlapping local variables have a unique slot. Attempts to reuse free slots.

Specified by:
  `getSlot` in interface `LocalVariable`
Returns:
  the value of the 'Slot' attribute.
See Also:
  `LocalVariable.setSlot(int)`, `EmftvmPackage.getLocalVariable_Slot()`

#### setSlot

    public void setSlot​(int newSlot)

Sets the value of the '`Slot`' attribute.

Specified by:
  `setSlot` in interface `LocalVariable`
Parameters:
  `newSlot` - the new value of the 'Slot' attribute.
See Also:
  `LocalVariable.getSlot()`

#### getStartInstruction

    public Instruction getStartInstruction()

Returns the value of the 'Start Instruction' reference.

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

Specified by:
  `getStartInstruction` in interface `LocalVariable`
Returns:
  the value of the 'Start Instruction' reference.
See Also:
  `LocalVariable.setStartInstruction(Instruction)`, `EmftvmPackage.getLocalVariable_StartInstruction()`

#### basicGetStartInstruction

    public Instruction basicGetStartInstruction()

#### setStartInstruction

    public void setStartInstruction​(Instruction newStartInstruction)

Sets the value of the '`Start Instruction`' reference.

Specified by:
  `setStartInstruction` in interface `LocalVariable`
Parameters:
  `newStartInstruction` - the new value of the 'Start Instruction' reference.
See Also:
  `LocalVariable.getStartInstruction()`

#### getEndInstruction

    public Instruction getEndInstruction()

Returns the value of the 'End Instruction' reference.

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

Specified by:
  `getEndInstruction` in interface `LocalVariable`
Returns:
  the value of the 'End Instruction' reference.
See Also:
  `LocalVariable.setEndInstruction(Instruction)`, `EmftvmPackage.getLocalVariable_EndInstruction()`

#### basicGetEndInstruction

    public Instruction basicGetEndInstruction()

See Also:
  `getEndInstruction()`

#### setEndInstruction

    public void setEndInstruction​(Instruction newEndInstruction)

Sets the value of the '`End Instruction`' reference.

Specified by:
  `setEndInstruction` in interface `LocalVariable`
Parameters:
  `newEndInstruction` - the new value of the 'End Instruction' reference.
See Also:
  `LocalVariable.getEndInstruction()`

#### getStartInstructionIndex

    public int getStartInstructionIndex()

Returns the value of the 'Start Instruction Index' attribute. The default value is `"-1"`.

Specified by:
  `getStartInstructionIndex` in interface `LocalVariable`
Returns:
  the value of the 'Start Instruction Index' attribute.
See Also:
  `LocalVariable.setStartInstructionIndex(int)`, `EmftvmPackage.getLocalVariable_StartInstructionIndex()`

#### setStartInstructionIndex

    public void setStartInstructionIndex​(int newStartInstructionIndex)

Sets the value of the '`Start Instruction Index`' attribute.

Specified by:
  `setStartInstructionIndex` in interface `LocalVariable`
Parameters:
  `newStartInstructionIndex` - the new value of the 'Start Instruction Index' attribute.
See Also:
  `LocalVariable.getStartInstructionIndex()`

#### getEndInstructionIndex

    public int getEndInstructionIndex()

Returns the value of the 'End Instruction Index' attribute. The default value is `"-1"`.

Specified by:
  `getEndInstructionIndex` in interface `LocalVariable`
Returns:
  the value of the 'End Instruction Index' attribute.
See Also:
  `LocalVariable.setEndInstructionIndex(int)`, `EmftvmPackage.getLocalVariable_EndInstructionIndex()`

#### setEndInstructionIndex

    public void setEndInstructionIndex​(int newEndInstructionIndex)

Sets the value of the '`End Instruction Index`' attribute.

Specified by:
  `setEndInstructionIndex` in interface `LocalVariable`
Parameters:
  `newEndInstructionIndex` - the new value of the 'End Instruction Index' attribute.
See Also:
  `LocalVariable.getEndInstructionIndex()`

#### eInverseAdd

    public org.eclipse.emf.common.notify.NotificationChain eInverseAdd​(org.eclipse.emf.ecore.InternalEObject otherEnd,
                                                                       int featureID,
                                                                       org.eclipse.emf.common.notify.NotificationChain msgs)

Overrides:
  `eInverseAdd` in class `org.eclipse.emf.ecore.impl.BasicEObjectImpl`

#### eInverseRemove

    public org.eclipse.emf.common.notify.NotificationChain eInverseRemove​(org.eclipse.emf.ecore.InternalEObject otherEnd,
                                                                          int featureID,
                                                                          org.eclipse.emf.common.notify.NotificationChain msgs)

Overrides:
  `eInverseRemove` in class `org.eclipse.emf.ecore.impl.BasicEObjectImpl`

#### eBasicRemoveFromContainerFeature

    public org.eclipse.emf.common.notify.NotificationChain eBasicRemoveFromContainerFeature​(org.eclipse.emf.common.notify.NotificationChain msgs)

Overrides:
  `eBasicRemoveFromContainerFeature` in class `org.eclipse.emf.ecore.impl.BasicEObjectImpl`

#### eGet

    public java.lang.Object eGet​(int featureID,
                                 boolean resolve,
                                 boolean coreType)

Specified by:
  `eGet` in interface `org.eclipse.emf.ecore.InternalEObject`
Overrides:
  `eGet` in class `TypedElementImpl`

#### eSet

    public void eSet​(int featureID,
                     java.lang.Object newValue)

Specified by:
  `eSet` in interface `org.eclipse.emf.ecore.InternalEObject`
Overrides:
  `eSet` in class `TypedElementImpl`

#### eUnset

    public void eUnset​(int featureID)

Specified by:
  `eUnset` in interface `org.eclipse.emf.ecore.InternalEObject`
Overrides:
  `eUnset` in class `TypedElementImpl`

#### eIsSet

    public boolean eIsSet​(int featureID)

Specified by:
  `eIsSet` in interface `org.eclipse.emf.ecore.InternalEObject`
Overrides:
  `eIsSet` in class `TypedElementImpl`

#### getOwningBlock

    public CodeBlock getOwningBlock()

Returns the value of the 'Owning Block' container reference. It is bidirectional and its opposite is '`Local Variables`'.

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

Specified by:
  `getOwningBlock` in interface `LocalVariable`
Returns:
  the value of the 'Owning Block' container reference.
See Also:
  `LocalVariable.setOwningBlock(CodeBlock)`, `EmftvmPackage.getLocalVariable_OwningBlock()`, `CodeBlock.getLocalVariables()`

#### basicSetOwningBlock

    public org.eclipse.emf.common.notify.NotificationChain basicSetOwningBlock​(CodeBlock newOwningBlock,
                                                                               org.eclipse.emf.common.notify.NotificationChain msgs)

See Also:
  `setOwningBlock(CodeBlock)`

#### setOwningBlock

    public void setOwningBlock​(CodeBlock newOwningBlock)

Sets the value of the '`Owning Block`' container reference.

Specified by:
  `setOwningBlock` in interface `LocalVariable`
Parameters:
  `newOwningBlock` - the new value of the 'Owning Block' container reference.
See Also:
  `LocalVariable.getOwningBlock()`

#### toString

    public java.lang.String toString()

Overrides:
  `toString` in class `TypedElementImpl`