Interface IDefinitionSource

All Known Implementing Classes:
MetaModelDelegate, TslTypeScope

public interface IDefinitionSource
This interface defines the methods which are needed by the expression parser to identify and validate objects that are used in expression, but whose source is external.
Since:
5.0
Author:
O. Kerpershoek, F. van der Meer
  • Method Details

    • getObjectDefinition

      IObjectDefinition getObjectDefinition(String name)
      This method returns the object definition for the specified type name.
      Parameters:
      name - The name of the type for which the definition is requested.
      Returns:
      The definition of the object with the specified type name.
      Throws:
      ParseException - This type of exception may be thrown when the name does not identify a known type.
    • getNamedObjectDefinition

      IObjectDefinition getNamedObjectDefinition(String objectName, String instanceName)
      This method returns the object definition for the specified type and instance name.
      Parameters:
      objectName - The name of the type for which the definition is requested.
      instanceName - The instance name for the specified type for which the definition is requested.
      Returns:
      An object definition when available. null otherwise.
    • getValueDefinition

      IValueDefinition getValueDefinition(String name)
      This method returns the value definition of a label (or global property?). For example: PI
      Parameters:
      name - The name of the global value that is requested.
      Returns:
      An object containing the value definition for the specified identifier.
      Throws:
      ParseException - This type of exception may be thrown when the name does not identify a known type.
    • getSharedAncestor

      String getSharedAncestor(String first, String second)
      Determines the shared ancestor of two entity types. If no shared ancestor can be found null will be returned
      Parameters:
      first - The type name of the first entity.
      second - The type name of the second entity.
      Returns:
      The type name of an ancestor which is shared by both types, or null when the two types do not have a common ancestor.
    • registerExpressionTemplate

      void registerExpressionTemplate(String name)
      This function will be called to register a usage of a reusable expression to the implementor of this interface. Added for studio 6.x+
      Parameters:
      name - The name of the expression template.