Most of the methods of the CoffeeParser class return a parser that recognizes one aspect of the coffee grammar. For example, the price() method returns a parser for the rule
price = Num;
The code for CoffeeParser.price() plugs in the price assembler:
/* * Return a parser that will recognize the sequence: * * price = Num; * * Use a PriceAssembler to update ...