@Override
	public void addSymbol(SleighSymbol sym) {
		SleighSymbol s = sleigh.findSymbol(sym.getName());
		if (s == null) {
			s = symbolMap.get(sym.getName());
		}
		if (s != null) {
			if (s != sym) {
				throw new SleighError("Duplicate symbol name: " + sym.getName() +
					" (previously defined at " + s.location + ")", sym.getLocation());
			}
		}
		else {
			symbolMap.put(sym.getName(), sym);
			currentSymbols.add(sym.getName());
		}
	}
Inject a symbol representing an "operand" to the pcode snippet.

<p>
This puts a placeholder in the resulting template, which gets filled in with the context
specific storage locations when final p-code is generated

@param loc is location information for the operand
@param name of operand symbol
@param index to use for the placeholder
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/lang/PcodeParser.java