Class Lookahead

java.lang.Object
org.javacc.parser.Expansion
org.javacc.parser.Lookahead

public class Lookahead extends Expansion
Describes lookahead rule for a particular expansion or expansion sequence (See Sequence.java). In case this describes the lookahead rule for a single expansion unit, then a sequence is created with this node as the first element, and the expansion unit as the second and last element.
  • Field Details

    • action_tokens

      private final List<Token> action_tokens
      Contains the list of tokens that make up the semantic lookahead if any. If this node represents a different kind of lookahead (other than semantic lookahead), then this list contains nothing. If this list contains something, then it is the boolean expression that forms the semantic lookahead. In this case, the following fields "amount" and "la_expansion" are ignored.
    • amount

      private int amount
      The lookahead amount. Its default value essentially gives us infinite lookahead.
    • la_expansion

      private Expansion la_expansion
      The expansion used to determine whether or not to choose the corresponding parse option. This expansion is parsed upto "amount" tokens of lookahead or until a complete match for it is found. Usually, this is the same as the expansion to be parsed.
    • isExplicit

      private boolean isExplicit
      Is set to true if this is an explicit lookahead specification.
  • Constructor Details

    • Lookahead

      public Lookahead()
  • Method Details

    • dump

      public StringBuffer dump(int indent, Set<Expansion> alreadyDumped)
      Overrides:
      dump in class Expansion
    • getActionTokens

      public List<Token> getActionTokens()
      Returns:
      the action_tokens
    • setAmount

      public void setAmount(int amount)
      Parameters:
      amount - the amount to set
    • getAmount

      public int getAmount()
      Returns:
      the amount
    • setLaExpansion

      public void setLaExpansion(Expansion la_expansion)
      Parameters:
      la_expansion - the la_expansion to set
    • getLaExpansion

      public Expansion getLaExpansion()
      Returns:
      the la_expansion
    • setExplicit

      public void setExplicit(boolean isExplicit)
      Parameters:
      isExplicit - the isExplicit to set
    • isExplicit

      public boolean isExplicit()
      Returns:
      the isExplicit