@Override
	public void addProduction(AssemblyProduction prod) {
		if (isPureRecursive(prod)) {
			pureRecursive.put(prod.getLHS().getName(), prod);
		}
		else {
			super.addProduction(prod);
		}
	}
Defines a context free grammar, used to parse mnemonic assembly instructions

<p>
This stores the CFG and the associated semantics for each production. It also has mechanisms for
tracking "purely recursive" productions. These are productions of the form I =&gt; I, and they
necessarily create ambiguity. Thus, when constructing a parser, it is useful to identify them
early.
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/app/plugin/assembler/sleigh/grammars/AssemblyGrammar.java