Class AccessExpression

java.lang.Object
team.unnamed.mocha.parser.ast.AccessExpression
All Implemented Interfaces:
Expression

public final class AccessExpression extends Object implements Expression
Property accessing expression implementation, access to a property on another expression result.

Example property accessing expressions: v.x, v.location.x, 'str'.length, query.print

Since:
3.0.0
  • Constructor Details

    • AccessExpression

      public AccessExpression(@NotNull @NotNull Expression object, @NotNull @NotNull String property)
  • Method Details

    • object

      @NotNull public @NotNull Expression object()
      Gets the "object" expression, the property is evaluated on this expression's result.
      Returns:
      The object expression.
      Since:
      3.0.0
    • object

      public void object(@NotNull @NotNull Expression object)
      Sets the "object" expression, the property is evaluated on this expression's result.
      Parameters:
      object - The object expression.
      Since:
      3.0.0
    • property

      @NotNull public @NotNull String property()
      Gets the accessed property name.
      Returns:
      The property name.
      Since:
      3.0.0
    • visit

      public <R> R visit(@NotNull @NotNull ExpressionVisitor<R> visitor)
      Description copied from interface: Expression
      Visits this expression with the given visitor.
      Specified by:
      visit in interface Expression
      Type Parameters:
      R - The visit result return type
      Parameters:
      visitor - The expression visitor
      Returns:
      The visit result
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object