Module perplex::glr [−][src]
Analysis of the GLR/LR(k) behaviour of a grammar.
Structs
Conflict |
A conflict between multiple actions triggered by the same symbol. |
ConflictArc |
A subspace of a parser's state space within which a conflict is active. |
ConflictLane |
An individual point in the state space tracked by a conflict node. Lanes represent the sequences of reductions that happen in between shifts. They may have back-edges to lanes in earlier nodes to represent the state of the stack at various points. |
ConflictLaneId |
A unique identifier for a lane in a conflict node. |
ConflictNode |
A node in a conflict arc. |
ConflictNodeId |
A unique identifier for a node in a conflict arc. |
GlrAnalysis |
An analysis of conflicts and their resolvability via GLR/LR(k). |
LocalAmbiguity |
A local ambiguity in a grammar. |
Reconv |
A point of reconvergence in a conflict arc. |
RuleSlice |
A resolution to a local ambiguity in a grammar. |
Enums
ConflictEdge |
An edge from one conflict node to another. |
Functions
find_conflict_arc |
Find the arc of a conflict. |
find_conflicts |
Find the conflict points in the item sets of a grammar where the same symbol would lead to two different actions. |
find_local_ambiguity |
Find the local ambiguity associated with a point of reconvergence. |
find_reconvergences |
Find all points of reconvergence in an arc. |
resolve_local_ambiguity |
Identify the rule slices which must be unified to resolve an ambiguity. |