scala.util.parsing.ast.Binders

BoundElement

class BoundElement[boundElement <: NameElement](el: boundElement, scope: Scope[boundElement]) extends NameElement with Proxy with BindingSensitive with Product

A BoundElement' is bound in a certain scope scope', which keeps track of the actual element thatel' stands for. A BoundElement' is represented textually by its bound element, followed by its scope's id'. For example: x@1' represents the variable x' that is bound in the scope with id' 1'.

Inherits

  1. Product
  2. Equals
  3. BindingSensitive
  4. Proxy
  5. NameElement
  6. Element
  7. Positional
  8. AnyRef
  9. Any

Value Members

  1. def alpha_==[t <: NameElement](other: BoundElement[t]): Boolean

  2. def canEqual(arg0: Any): Boolean

    A method that should be called from every well-designed equals method that is open to be overridden in a subclass

    A method that should be called from every well-designed equals method that is open to be overridden in a subclass. See Programming in Scala, Chapter 28 for discussion and design.

  3. val el: boundElement

  4. def equals(that: Any): Boolean

    This method is used to compare the receiver object (this) with the argument object (arg0) for equivalence

    This method is used to compare the receiver object (this) with the argument object (arg0) for equivalence.

    The default implementations of this method is an equivalence relation:

    • It is reflexive: for any instance x of type Any, x.equals(x) should return true.
    • It is symmetric: for any instances x and y of type Any, x.equals(y) should return true if and only if y.equals(x) returns true.
    • It is transitive: for any instances x, y, and z of type AnyRef if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.

    If you override this method, you should verify that your implementation remains an equivalence relation. Additionally, when overriding this method it is often necessary to override hashCode to ensure that objects that are "equal" (o1.equals(o2) returns true) hash to the same Int (o1.hashCode.equals(o2.hashCode)).

    definition classes: Proxy ⇐ AnyRef ⇐ Any
  5. def hashCode(): Int

    Returns a hash code value for the object

    Returns a hash code value for the object.

    The default hashing algorithm is platform dependent.

    Note that it is allowed for two objects to have identical hash codes (o1.hashCode.equals(o2.hashCode)) yet not be equal (o1.equals(o2) returns false). A degenerate implementation could always return 0. However, it is required that if two objects are equal (o1.equals(o2) returns true) that they have identical hash codes (o1.hashCode.equals(o2.hashCode)). Therefore, when overriding this method, be sure to verify that the behavior is consistent with the equals method.

    definition classes: Proxy ⇐ AnyRef ⇐ Any
  6. def name: String

  7. var pos: Position

    The source position of this object, initially set to undefined

    The source position of this object, initially set to undefined.

    definition classes: Positional
  8. def productArity: Int

    return k for a product A(x_1,

    return k for a product A(x_1,...,x_k)

  9. def productElement(arg0: Int): Any

    for a product A(x_1,

    for a product A(x_1,...,x_k), returns x_(n+1) for 0 <= n < k

  10. def productElements: Iterator[Any]

  11. def productIterator: Iterator[Any]

    An iterator that returns all fields of this product

    An iterator that returns all fields of this product

    definition classes: Product
  12. def productPrefix: String

    By default the empty string

    By default the empty string. Implementations may override this method in order to prepend a string prefix to the result of the toString methods.

  13. val scope: Scope[boundElement]

  14. def self: Element

    Returns the element this BoundElement' stands for

    Returns the element this BoundElement' stands for. The Proxy' trait ensures equals', hashCode' and toString' are forwarded to the result of this method.

  15. def setPos(newpos: Position): Positional

    If current source position is undefined, update it with given position newpos'

    If current source position is undefined, update it with given position newpos'

    definition classes: Positional
  16. def toString(): String

    Returns a string representation of the object

    Returns a string representation of the object.

    The default representation is platform dependent.

Instance constructors

  1. new BoundElement(el: boundElement, scope: Scope[boundElement])

  2. new BoundElement()