Class AssemblyNumericMapTerminal
java.lang.Object
ghidra.app.plugin.assembler.sleigh.symbol.AssemblySymbol
ghidra.app.plugin.assembler.sleigh.symbol.AssemblyTerminal
ghidra.app.plugin.assembler.sleigh.symbol.AssemblyNumericTerminal
ghidra.app.plugin.assembler.sleigh.symbol.AssemblyNumericMapTerminal
- All Implemented Interfaces:
Comparable<AssemblySymbol>
A terminal that accepts only a particular set of numeric values, mapping each to another value
This often used for non-conventional numeric encodings.
- See Also:
-
Field Summary
FieldsFields inherited from class ghidra.app.plugin.assembler.sleigh.symbol.AssemblyNumericTerminal
bitsize, MAX_LABEL_SUGGESTIONS, PREFIX_HEX, PREFIX_OCT, space, SUGGESTIONSFields inherited from class ghidra.app.plugin.assembler.sleigh.symbol.AssemblySymbol
name -
Constructor Summary
ConstructorsConstructorDescriptionAssemblyNumericMapTerminal(String name, Map<Long, Integer> map) Construct a terminal with the given name, accepting only the keys of a given map -
Method Summary
Modifier and TypeMethodDescriptiongetMap()getSuggestions(String got, AssemblyNumericSymbols symbols) Provide a collection of strings that this terminal would have acceptedmatch(String buffer, int pos, AssemblyGrammar grammar, AssemblyNumericSymbols symbols) Attempt to match a token from the input buffer starting at a given positionMethods inherited from class ghidra.app.plugin.assembler.sleigh.symbol.AssemblyNumericTerminal
getBitSize, getSpace, makeToken, match, match, matchDec, matchHex, matchLiteral, matchOct, toStringMethods inherited from class ghidra.app.plugin.assembler.sleigh.symbol.AssemblySymbol
compareTo, equals, getName, hashCode, takesOperandIndex
-
Field Details
-
map
-
-
Constructor Details
-
AssemblyNumericMapTerminal
Construct a terminal with the given name, accepting only the keys of a given map- Parameters:
name- the namemap- the map from display value to token value
-
-
Method Details
-
match
public Collection<AssemblyParseNumericToken> match(String buffer, int pos, AssemblyGrammar grammar, AssemblyNumericSymbols symbols) Description copied from class:AssemblyTerminalAttempt to match a token from the input buffer starting at a given position- Overrides:
matchin classAssemblyNumericTerminal- Parameters:
buffer- the input bufferpos- the cursor position in the buffergrammar- the grammar containing this terminalsymbols- symbols from the program, suitable for use as numeric terminals- Returns:
- the matched token, or null
-
getSuggestions
Description copied from class:AssemblyTerminalProvide a collection of strings that this terminal would have accepted- Overrides:
getSuggestionsin classAssemblyNumericTerminal- Parameters:
got- the remaining contents of the input buffersymbols- the program symbols, if applicable- Returns:
- a, possibly empty, collection of suggestions
-
getMap
-