Package java_cup

Class action_production

java.lang.Object
java_cup.production
java_cup.action_production

public class action_production extends production
A specialized version of a production used when we split an existing production in order to remove an embedded action. Here we keep a bit of extra bookkeeping so that we know where we came from.
Version:
last updated: 11/25/95
Author:
Scott Hudson
  • Field Details

    • _base_production

      protected production _base_production
      The production we were taken out of.
  • Constructor Details

    • action_production

      public action_production(production base, non_terminal lhs_sym, production_part[] rhs_parts, int rhs_len, String action_str, int indexOfIntermediateResult) throws internal_error
      Constructor.
      Parameters:
      base - the production we are being factored out of.
      lhs_sym - the LHS symbol for this production.
      rhs_parts - array of production parts for the RHS.
      rhs_len - how much of the rhs_parts array is valid.
      action_str - the trailing reduce action for this production.
      indexOfIntermediateResult - the index of the result of the previous intermediate action on the stack relative to top, -1 if no previous action
      Throws:
      internal_error
  • Method Details

    • getIndexOfIntermediateResult

      public int getIndexOfIntermediateResult()
      Returns:
      the index of the result of the previous intermediate action on the stack relative to top, -1 if no previous action
    • base_production

      public production base_production()
      The production we were taken out of.