Package java_cup

Class 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 Detail

      • _base_production

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

      • action_production

        public action_production​(production base,
                                 non_terminal lhs_sym,
                                 production_part[] rhs_parts,
                                 int rhs_len,
                                 java.lang.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 Detail

      • 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.