Next: Bocage constructor, Previous: Bocage overview, Up: Bocage methods [Contents][Index]
A bocage is a data structure containing the parses found by processing the input according to the grammar. It is related to a parse forest, but is in a form that is more compact and easily traversable. “Bocage” is our term, and we discovered this structure independently, but our work was preceded by Elizabeth Scott. And, unlike us, Prof. Scott did the all-important work of documenting it and providing the appropriate mathematical apparatus. See Elizabeth Scott's SPPFs.
The bocage contains the data for the parse trees whose root is an instance of the start symbol that begins at Earley set 0 and ends at the end of parse Earley set. Applications usually use the Earley set at the current earleme as the “end of parse Earley set”, so that the bocage is for parses of the entire input. But some applications may be interested in parsing prefixes of the input, and these applications can choose other end of parse Earley sets in their constructor. See marpa_b_new().