Class AbstractVar<S extends AbstractScope<S,​V>,​V extends AbstractVar<S,​V>>

    • Method Detail

      • getName

        public java.lang.String getName()
        Description copied from interface: StaticSlot
        Gets the name of the slot.
        Specified by:
        getName in interface StaticSlot
      • getScopeRoot

        public final Node getScopeRoot()
      • getNode

        public final Node getNode()
        Description copied from interface: StaticRef
        The node where the reference lives.
        Specified by:
        getNode in interface StaticRef
      • getSymbol

        public final V getSymbol()
        Description copied from interface: StaticRef
        The variable that this reference points to.
        Specified by:
        getSymbol in interface StaticRef
      • getDeclaration

        public final V getDeclaration()
        Description copied from interface: StaticSlot
        Gets the declaration of this symbol. May not exist.
        Specified by:
        getDeclaration in interface StaticSlot
      • getParentNode

        public final Node getParentNode()
      • isBleedingFunction

        public boolean isBleedingFunction()
        Whether this is a bleeding function (an anonymous named function that bleeds into the inner scope).
      • isGlobal

        public boolean isGlobal()
      • isLocal

        public final boolean isLocal()
      • isDeclaredOrInferredConst

        public final boolean isDeclaredOrInferredConst()
        Returns true if the variable is declared or inferred to be a constant.
      • isDefine

        public final boolean isDefine()
        Returns true if the variable is declared as a define. A variable is a define if it is annotated by @define.
      • getInitialValue

        public final Node getInitialValue()
      • getNameNode

        public Node getNameNode()
      • isDefaultParam

        public final boolean isDefaultParam()
      • isArguments

        public final boolean isArguments()
      • isThis

        public final boolean isThis()
      • equals

        public boolean equals​(java.lang.Object other)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object