Interface HasType

    • Method Detail

      • getType

        Type getType()
      • setType

        default void setType​(Type type)
      • setType

        void setType​(Type type,
                     HasType root)
        Set the node's type. This may start a chain of type listener notifications
        Parameters:
        type -
        root - The node that initiated the type change chain. When a node receives a type setting command where root == this, we know that we have a type listener circle and can abort. If root == null, the type change is seen as an externally triggered event and subsequent type listeners receive the current node as their root.
      • getPossibleSubTypes

        java.util.Set<Type> getPossibleSubTypes()
      • setPossibleSubTypes

        default void setPossibleSubTypes​(java.util.Set<Type> possibleSubTypes)
      • setPossibleSubTypes

        void setPossibleSubTypes​(java.util.Set<Type> possibleSubTypes,
                                 HasType root)
        Set the node's possible subtypes. Listener circle detection works the same way as with setType(Type, HasType)
        Parameters:
        possibleSubTypes -
        root -
      • refreshType

        void refreshType()
      • resetTypes

        void resetTypes​(Type type)
        Used to set the type and clear the possible subtypes list for when a type is more precise than the current.
        Parameters:
        type - the more precise type