Interface IResolvableModel<V extends IMetaParameterDeclaration,​M extends IModel>

    • Method Detail

      • getIvmlElement

        java.lang.Object getIvmlElement​(java.lang.String name)
        Returns whether the given name resolves to an IVML element.
        Parameters:
        name - the name to be resolved
        Returns:
        the IVML element (value, containable model element), null else
      • getParent

        IResolvableModel<V,​M> getParent()
        Get the parent project which this project extends.
        Returns:
        The parent project of this project or null if no parent is defined for this project.
      • getExtensionTypesCount

        int getExtensionTypesCount()
        Returns the number of extension types declared in/by this model.
        Returns:
        the number of extension types
      • getExtensionType

        IMetaType getExtensionType​(int index)
        Returns the specified extension type.
        Parameters:
        index - the 0-based index of the extension type to be returned
        Returns:
        the specified extension type
        Throws:
        java.lang.IndexOutOfBoundsException - in case that index < 0 || index >=getExtensionTypesCount()
      • getVariableDeclarationCount

        int getVariableDeclarationCount()
        Get the number of variable declaration of this model.
        Returns:
        The number of variable declaration of this model.
      • getVariableDeclaration

        V getVariableDeclaration​(int index)
        Get the variable declaration of this model at the specified index.
        Parameters:
        index - The 0-based index of the variable declaration to be returned.
        Returns:
        The variable declaration at the given index.
        Throws:
        java.lang.IndexOutOfBoundsException - if index < 0 || index >=getVariableDeclarationCount()
      • isImplicit

        boolean isImplicit​(V decl)
        Returns whether a variable declaration is implicit (predefined).
        Parameters:
        decl - the declaration to be tested
        Returns:
        true if it is implicit, false else
      • getTypedefCount

        int getTypedefCount()
        Get the number of typedefs of this model.
        Returns:
        The number of typedefs of this model.
      • getTypedef

        Typedef getTypedef​(int index)
        Get the typedef at the specified index.
        Parameters:
        index - The 0-based index of the typedef to be returned.
        Returns:
        The typedef parameter at the given index.
        Throws:
        java.lang.IndexOutOfBoundsException - if index < 0 || index >=getTypedefCount()
      • getTypedef

        Typedef getTypedef​(java.lang.String name)
        Returns the typedef with given name.
        Parameters:
        name - the name
        Returns:
        the typedef (may be null for none)
      • addRuntimeImport

        void addRuntimeImport​(ModelImport<M> imp)
        Adds a runtime model import.
        Parameters:
        imp - the import
      • getCompoundCount

        int getCompoundCount()
        Get the number of compounds defined in this model.
        Returns:
        The number of compounds of this model.
      • getCompound

        Compound getCompound​(int index)
        Get the compound at the specified index.
        Parameters:
        index - The 0-based index of the compound to be returned.
        Returns:
        The compound at the given index.
        Throws:
        java.lang.IndexOutOfBoundsException - if index < 0 || index >=getCompoundCount()
      • getCompound

        Compound getCompound​(java.lang.String name)
        Returns the compound declaration with given name.
        Parameters:
        name - the name
        Returns:
        the compound (may be null for none)