Package ghidra.pcode.exec
Class ComposedPcodeUseropLibrary<T>
java.lang.Object
ghidra.pcode.exec.ComposedPcodeUseropLibrary<T>
- Type Parameters:
T
- the type of values processed by the library
- All Implemented Interfaces:
PcodeUseropLibrary<T>
A p-code userop library composed of other libraries
-
Nested Class Summary
Nested classes/interfaces inherited from interface ghidra.pcode.exec.PcodeUseropLibrary
PcodeUseropLibrary.EmptyPcodeUseropLibrary, PcodeUseropLibrary.PcodeUseropDefinition<T>
-
Field Summary
Fields inherited from interface ghidra.pcode.exec.PcodeUseropLibrary
NIL
-
Constructor Summary
ConstructorDescriptionComposedPcodeUseropLibrary
(Collection<PcodeUseropLibrary<T>> libraries) Construct a composed userop library from the given libraries -
Method Summary
Modifier and TypeMethodDescriptionstatic <T> Map
<String, PcodeUseropLibrary.PcodeUseropDefinition<T>> composeUserops
(Collection<PcodeUseropLibrary<T>> libraries) Obtain a map representing the composition of userops from all the given librariesGet all the userops defined in this library, keyed by (symbol) name.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface ghidra.pcode.exec.PcodeUseropLibrary
compose, getSymbols
-
Constructor Details
-
ComposedPcodeUseropLibrary
Construct a composed userop library from the given librariesThis uses
composeUserops(Collection)
, so its restrictions apply here, too.- Parameters:
libraries
- the libraries
-
-
Method Details
-
composeUserops
public static <T> Map<String,PcodeUseropLibrary.PcodeUseropDefinition<T>> composeUserops(Collection<PcodeUseropLibrary<T>> libraries) Obtain a map representing the composition of userops from all the given librariesName collisions are not allowed. If any two libraries export the same symbol, even if the definitions happen to do the same thing, it is an error.
- Type Parameters:
T
- the type of values processed by the libraries- Parameters:
libraries
- the libraries whose userops to collect- Returns:
- the resulting map
-
getUserops
Description copied from interface:PcodeUseropLibrary
Get all the userops defined in this library, keyed by (symbol) name.- Specified by:
getUserops
in interfacePcodeUseropLibrary<T>
- Returns:
- the map of names to defined userops
-