@Override
	public Collection<AssemblyParseNumericToken> match(String buffer, int pos,
			AssemblyGrammar grammar, AssemblyNumericSymbols symbols) {
		// NOTE: No label substitution
		Collection<AssemblyParseNumericToken> toks =
			new HashSet<>(super.match(buffer, pos, grammar, AssemblyNumericSymbols.EMPTY));
		Collection<AssemblyParseNumericToken> results = new LinkedHashSet<>();
		for (AssemblyParseNumericToken tok : toks) {
			Integer mapped = map.get(tok.getNumericValue());
			if (mapped == null) {
				continue;
			}
			results.add(new AssemblyParseNumericToken(grammar, this, tok.getString(), mapped));
		}
		return results;
	}
Construct a terminal with the given name, accepting only the keys of a given map

@param name the name
@param map the map from display value to token value
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/app/plugin/assembler/sleigh/symbol/AssemblyNumericMapTerminal.java