Class AssemblyExtendedGrammar
java.lang.Object
ghidra.app.plugin.assembler.sleigh.grammars.AbstractAssemblyGrammar<AssemblyExtendedNonTerminal,AssemblyExtendedProduction>
ghidra.app.plugin.assembler.sleigh.grammars.AssemblyExtendedGrammar
- All Implemented Interfaces:
Iterable<AssemblyExtendedProduction>
public class AssemblyExtendedGrammar
extends AbstractAssemblyGrammar<AssemblyExtendedNonTerminal,AssemblyExtendedProduction>
Defines an "extended" grammar
"Extended grammar" as in a grammar extended with state numbers from an LR0 parser. See LALR(1) Parsing from Stephen Jackson of Dalhousie University, Halifax, Nova Scotia, Canada.
-
Field Summary
Fields inherited from class ghidra.app.plugin.assembler.sleigh.grammars.AbstractAssemblyGrammar
nonterminals, prodList, productions, startName, symbols, terminals
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected AssemblyExtendedProduction
Because a subclass may have a different type of production, it must provide a mechanism for constructing an appropriate production given just the LHS and RHS.Methods inherited from class ghidra.app.plugin.assembler.sleigh.grammars.AbstractAssemblyGrammar
addProduction, addProduction, combine, contains, getNonTerminal, getStart, getStartName, getTerminal, isPureRecursive, iterator, nonTerminals, print, productionsOf, productionsOf, setStart, setStartName, terminals, verify
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
AssemblyExtendedGrammar
public AssemblyExtendedGrammar()
-
-
Method Details
-
newProduction
protected AssemblyExtendedProduction newProduction(AssemblyExtendedNonTerminal lhs, AssemblySentential<AssemblyExtendedNonTerminal> rhs) Description copied from class:AbstractAssemblyGrammar
Because a subclass may have a different type of production, it must provide a mechanism for constructing an appropriate production given just the LHS and RHS.- Specified by:
newProduction
in classAbstractAssemblyGrammar<AssemblyExtendedNonTerminal,
AssemblyExtendedProduction> - Parameters:
lhs
- the left-hand side of the productionrhs
- the right-hand side of the production- Returns:
- the constructed production
-