Class VariableTreeTypeState

    • Constructor Detail

      • VariableTreeTypeState

        public VariableTreeTypeState​(Variable variable,
                                     Environments envs,
                                     int offset,
                                     org.eclipse.xtext.nodemodel.INode blockNode)
        Creates state
        Parameters:
        variable - Variable in BSL associated with this state, can't be null
        envs - Environments for this state, can't be null
        offset - position in document, where this state was created
        blockNode - INode corresponding to the containment Block in Built-In Language, can't be null
    • Method Detail

      • addExpression

        public void addExpression​(org.eclipse.xtext.util.Pair<Expression,​List<VariableTreeTypeState>> expression)
        Adds expresion to the state
        Parameters:
        expression - adding expression, can't be null
      • addDependState

        public void addDependState​(VariableTreeTypeState state)
        Adds depend state to the state
        Parameters:
        state - adding depend state, can't be null
      • hasNewTypes

        public boolean hasNewTypes()
        Gets value flag
        Returns:
        true if new types were add, false otherwise
      • setHasNewTypes

        public void setHasNewTypes​(boolean hasNewTypes)
        Sets value flag
        Parameters:
        hasNewTypes - true if new types were add, false otherwise
      • isDependOnCollection

        public boolean isDependOnCollection()
        Checks that this state depend on collection's element types
        Returns:
        true if this state depend on collection's element types, false otherwise
      • isExpandTypeContextDef

        public boolean isExpandTypeContextDef()
        Checks that this state expands contextDef type by processing Invocation calling
        Returns:
        true if this state expands contextDef type by processing Invocation calling, false otherwise
      • setDependOnCollection

        public void setDependOnCollection​(boolean dependOnCollection)
        Sets that this state depend on collection's element types
        Parameters:
        dependOnCollection - true if this state depend on collection's element types, false otherwise
      • setExpandTypeContextDef

        public void setExpandTypeContextDef​(boolean expandTypeContextDef)
        Sets that this state expands contextDef type by processing Invocation calling
        Parameters:
        expandTypeContextDef - true if expand contextDef type by processing Invocation calling false otherwise
      • isServerCall

        public boolean isServerCall()
        Checks that this state is linked with Invocation calling corresponding to the server call
        Returns:
        true if this state linked with Invocation calling corresponding to the server call, false otherwise
      • setServerCall

        public void setServerCall​(boolean serverCall)
        Sets that this state is linked with Invocation calling corresponding to the server call
        Parameters:
        serverCall - true if this state linked with Invocation calling corresponding to the server call, false otherwise
      • addSkipType

        public void addSkipType​(String typeName)
        Adds name of the type which should be deleted from state
        Parameters:
        typeName - name of the deleted type, cannot be null
      • addSkipTypes

        public void addSkipTypes​(Collection<String> typeNames)
        Adds names of the types which should be deleted from state
        Parameters:
        typeNames - names of the deleted type, cannot be null
      • addAllowedType

        public void addAllowedType​(String typeName)
        Adds name of the type which only can be contained in state
        Parameters:
        typeName - name of only contained type, cannot be null
      • addAllowedTypes

        public void addAllowedTypes​(Collection<String> typeNames)
        Adds names of the types which only can be contained in state
        Parameters:
        typeNames - names of only contained type, cannot be null