Package ghidra.program.util
Class AbstractProgramContext
java.lang.Object
ghidra.program.util.AbstractProgramContext
- All Implemented Interfaces:
- DefaultProgramContext,- ProgramContext
- Direct Known Subclasses:
- AbstractStoredProgramContext,- Disassembler.DisassemblerProgramContext
public abstract class AbstractProgramContext
extends Object
implements ProgramContext, DefaultProgramContext
- 
Field SummaryFields
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionfinal RegisterReturns the base context register.Gets the registers for this context that are used for processor context states.final RegisterValuefinal RegisterValuegetFlowValue(RegisterValue value) Modify register value to eliminate non-flowing bitsGet underlying language associated with this context and its registersfinal RegisterValuegetNonFlowValue(RegisterValue value) Modify register value to only include non-flowing bitsfinal RegistergetRegister(String name) Get a Register object given the name of a registerGet an alphabetical sorted unmodifiable list of original register names (including context registers).Get all the register descriptions defined for this program context.final booleanprotected voidInitialize context for the specified languagefinal voidSet the initial disassembly context to be used when initiating disassmblyMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ghidra.program.model.listing.DefaultProgramContextgetDefaultValue, setDefaultValueMethods inherited from interface ghidra.program.model.listing.ProgramContextgetDefaultRegisterValueAddressRanges, getDefaultRegisterValueAddressRanges, getDefaultValue, getDisassemblyContext, getNonDefaultValue, getRegistersWithValues, getRegisterValue, getRegisterValueAddressRanges, getRegisterValueAddressRanges, getRegisterValueRangeContaining, getValue, hasValueOverRange, remove, setRegisterValue, setValue
- 
Field Details- 
language
- 
baseContextRegister
- 
defaultDisassemblyContext
 
- 
- 
Constructor Details- 
AbstractProgramContext
 
- 
- 
Method Details- 
getLanguageGet underlying language associated with this context and its registers- Returns:
- language
 
- 
hasNonFlowingContextpublic final boolean hasNonFlowingContext()- Specified by:
- hasNonFlowingContextin interface- ProgramContext
- Returns:
- true if one or more non-flowing context registers fields have been defined within the base processor context register.
 
- 
getFlowValueModify register value to eliminate non-flowing bits- Specified by:
- getFlowValuein interface- ProgramContext
- Parameters:
- value- context register value to be modified
- Returns:
- value suitable for flowing
 
- 
getNonFlowValueModify register value to only include non-flowing bits- Specified by:
- getNonFlowValuein interface- ProgramContext
- Parameters:
- value- context register value to be modified
- Returns:
- new value or null if value does not correspond to a context register or non-flowing context fields have not been defined
 
- 
initInitialize context for the specified language- Parameters:
- lang- processor language for which this context applies
 
- 
getContextRegistersDescription copied from interface:ProgramContextGets the registers for this context that are used for processor context states.- Specified by:
- getContextRegistersin interface- ProgramContext
- Returns:
- all processor context registers
 
- 
getRegisterDescription copied from interface:ProgramContextGet a Register object given the name of a register- Specified by:
- getRegisterin interface- ProgramContext
- Parameters:
- name- the name of the register.
- Returns:
- The register with the given name or null if no register has that name.
 
- 
getRegisterNamesDescription copied from interface:ProgramContextGet an alphabetical sorted unmodifiable list of original register names (including context registers). Names correspond to orignal register name and not aliases which may be defined.- Specified by:
- getRegisterNamesin interface- ProgramContext
- Returns:
- alphabetical sorted unmodifiable list of original register names.
 
- 
getRegistersDescription copied from interface:ProgramContextGet all the register descriptions defined for this program context.- Specified by:
- getRegistersin interface- ProgramContext
- Returns:
- unmodifiable list of defined register descriptions
 
- 
getBaseContextRegisterDescription copied from interface:ProgramContextReturns the base context register.- Specified by:
- getBaseContextRegisterin interface- ProgramContext
- Returns:
- the base context register.
 
- 
getDefaultDisassemblyContext- Specified by:
- getDefaultDisassemblyContextin interface- ProgramContext
- Returns:
- Get the current default disassembly context to be used when initiating disassmbly
 
- 
setDefaultDisassemblyContextDescription copied from interface:ProgramContextSet the initial disassembly context to be used when initiating disassmbly- Specified by:
- setDefaultDisassemblyContextin interface- ProgramContext
- Parameters:
- value- context register value
 
 
-