Class ExecEnv

java.lang.Object
org.eclipse.m2m.atl.engine.emfvm.lib.ExecEnv

public class ExecEnv extends Object
Execution environment.
  • Constructor Details

    • ExecEnv

      public ExecEnv(Map<String,IModel> models, ITool[] tools)
      Creates a new execenv parametrized by models.
      Parameters:
      models - the models map
      tools - the execution tools
  • Method Details

    • stepTools

      public void stepTools(AbstractStackFrame frame)
      Steps the tools.
      Parameters:
      frame - the frame
    • enterTools

      public void enterTools(AbstractStackFrame frame)
      Enters the tools.
      Parameters:
      frame - the frame
    • leaveTools

      public void leaveTools(AbstractStackFrame frame)
      Leaves the tools.
      Parameters:
      frame - the frame
    • terminateTools

      public void terminateTools()
      Terminates the tools.
    • init

      public void init(IModelAdapter modelAdapterParam)
      Initializes the execenv.
      Parameters:
      modelAdapterParam - the model adapter
    • getModelNameOf

      public String getModelNameOf(Object element)
      Returns the model containing the element.
      Parameters:
      element - a model element
      Returns:
      the model containing the element
    • getNameOf

      public String getNameOf(IModel model)
      Returns the model name.
      Parameters:
      model - a model
      Returns:
      the model name
    • getModel

      public IModel getModel(Object name)
      Returns the model by name.
      Parameters:
      name - the model name
      Returns:
      the model by name
    • getModels

      public Iterator<IModel> getModels()
    • getOperation

      public Operation getOperation(Object type, Object name)
      Find an operation by its context type and name.
      Parameters:
      type - operation context type
      name - operation name
      Returns:
      the operation
    • registerHelperAttribute

      public void registerHelperAttribute(Object type, String name, String initOperationName)
      Stores an attribute helper.
      Parameters:
      type - the attribute type
      name - the attribute name
      initOperationName - the init operation name
    • getAttributeInitializer

      public Operation getAttributeInitializer(Object type, String name)
      Returns the attribute initializer.
      Parameters:
      type - the attribute type
      name - the attribute name
      Returns:
      the attribute initializer
    • getHelperValue

      public Object getHelperValue(AbstractStackFrame frame, Object type, Object element, String name)
      Gets the value of an helper.
      Parameters:
      frame - the frame context
      type - the helper type
      element - the element
      name - the helper value name
      Returns:
      the value
    • registerOperation

      public void registerOperation(Object type, Operation oper, String name)
      Deprecated.
      Registers operation for a given type.
      Parameters:
      type - the type
      oper - the operation
      name - the operation name
    • registerOperation

      public void registerOperation(Object type, Operation oper)
      Registers operation for a given type.
      Parameters:
      type - the type
      oper - the operation
    • toPrettyPrintedString

      public String toPrettyPrintedString(Object value)
      Converts a value to a displayable string.
      Parameters:
      value - the value to convert
      Returns:
      the displayable string
    • prettyPrint

      public void prettyPrint(Object value)
      Displays a value.
      Parameters:
      value - the value to display
    • prettyPrint

      public void prettyPrint(PrintStream out, Object value)
      Displays a value.
      Parameters:
      out - the stream
      value - the value to display
    • prettyPrintCollection

      public void prettyPrintCollection(PrintStream out, Collection<?> col)
      Display a collection.
      Parameters:
      out - the out stream
      col - the collection
    • findMetaElement

      public static Object findMetaElement(AbstractStackFrame frame, Object mname, Object me)
      Finds a meta element by its name.
      Parameters:
      frame - the frame context
      mname - the metamodel name
      me - the model element
      Returns:
      the meta element
    • newElement

      public Object newElement(AbstractStackFrame frame, Object ec)
      Creates a new element in the given frame.
      Parameters:
      frame - the frame context
      ec - the element type
      Returns:
      the new element
    • newElement

      public Object newElement(AbstractStackFrame frame, Object ec, String metamodelName)
      Creates a new element in the given frame.
      Parameters:
      frame - the frame context
      ec - the element type
      metamodelName - the metamodel name
      Returns:
      the new element
    • newElementIn

      public Object newElementIn(AbstractStackFrame frame, Object ec, String modelName)
      Creates a new element in the given frame and the given model.
      Parameters:
      frame - the frame context
      ec - the element type
      modelName - the model name
      Returns:
      the new element
    • getModelsByName

      public Map<String,IModel> getModelsByName()
    • isStep

      public boolean isStep()
    • setStep

      public void setStep(boolean step)
    • getModelAdapter

      public IModelAdapter getModelAdapter()
    • getNbExecutedBytecodes

      public long getNbExecutedBytecodes()
    • incNbExecutedBytecodes

      public void incNbExecutedBytecodes()
      Increments the nbExecutedBytecodes.
    • isWeavingHelper

      public boolean isWeavingHelper(Object type, String name)
      Returns true if there is a weaving helper for the given type and name.
      Parameters:
      type - the helper type
      name - the helper name
      Returns:
      true if there is a weaving helper for the given type and name
    • registerWeavingHelper

      public void registerWeavingHelper(Object type, String name, String persistTo)
      Registers a weaving helper.
      Parameters:
      type - the helper context
      name - the helper name
      persistTo - the name of the feature to persist
    • isHelper

      public boolean isHelper(Object type, String name)
      Returns true if the given type has a helper with the given name.
      Parameters:
      type - the given type
      name - the helper name
      Returns:
      true if the given type has a helper with the given name
    • setHelperValue

      public void setHelperValue(Object element, String name, Object value)
      Sets an helper value (only for weaving helpers).
      Parameters:
      element - the helper context
      name - the helper name
      value - the value to set
    • terminated

      public void terminated()
      Ends the execution.
    • getModelOf

      public IModel getModelOf(Object element)
      Get the model of a given element.
      Parameters:
      element - the given element
      Returns:
      the model