Javadoc Fixes

This commit is contained in:
astrelsky 2019-11-25 23:41:54 -05:00
parent 9a470a9dc7
commit ebde7cd6d2
No known key found for this signature in database
GPG key ID: FA88FA97D6877C37
659 changed files with 1690 additions and 3968 deletions

View file

@ -58,7 +58,7 @@ import ghidra.util.task.*;
* indicates locations for where classes for plugins and data types should * indicates locations for where classes for plugins and data types should
* be searched; the Plugin path can include jar files just like a classpath. * be searched; the Plugin path can include jar files just like a classpath.
* The Plugin path can be changed by using the <i>Edit Plugin Path</i> dialog, * The Plugin path can be changed by using the <i>Edit Plugin Path</i> dialog,
* displayed from the <i>Edit->Edit Plugin Path...</i> menu option on the main * displayed from the <i>Edit-&gt;Edit Plugin Path...</i> menu option on the main
* Ghidra project window. * Ghidra project window.
* *
* @see ghidra.GhidraLauncher * @see ghidra.GhidraLauncher

View file

@ -31,7 +31,7 @@ import ghidra.util.task.TaskMonitor;
* in the area will be replaced with the new dataType, except when the existing data * in the area will be replaced with the new dataType, except when the existing data
* or the given dataType is a pointer. If the existing dataType is a pointer, then * or the given dataType is a pointer. If the existing dataType is a pointer, then
* it will be changed into a pointer to the given dataType. If the given dataType * it will be changed into a pointer to the given dataType. If the given dataType
* is a pointer and the existing data is >= to the size of a pointer, it will become * is a pointer and the existing data is &gt;= to the size of a pointer, it will become
* a pointer to the existing type. If the existing dataType is less than the size * a pointer to the existing type. If the existing dataType is less than the size
* of a pointer, then a pointer to dataType will only be created if there are * of a pointer, then a pointer to dataType will only be created if there are
* enough undefined bytes following to make a pointer. * enough undefined bytes following to make a pointer.

View file

@ -31,7 +31,7 @@ import ghidra.program.model.listing.Program;
* the existing data will be changed into a pointer to the given dataType. If the given dataType * the existing data will be changed into a pointer to the given dataType. If the given dataType
* is a default-pointer, it will become a pointer to the existing type. * is a default-pointer, it will become a pointer to the existing type.
* *
* @see DataUtilities#createData(Program, Address, DataType, boolean, ghidra.program.model.data.DataUtilities.ClearDataMode) * @see DataUtilities#createData(Program, Address, DataType, int, boolean, DataUtilities.ClearDataMode)
*/ */
public class CreateDataCmd implements Command { public class CreateDataCmd implements Command {

View file

@ -48,9 +48,8 @@ public class ArmDisassembleCommand extends DisassembleCommand {
} }
/** /**
* Constructor for DisassembleCommand. * Constructor for ArmDisassembleCommand.
* @param startSet set of addresses to be the start of a disassembly. The * @param start address to be the start of a disassembly.
* Command object will attempt to start a disassembly at each address in this set.
* @param restrictedSet addresses that can be disassembled. * @param restrictedSet addresses that can be disassembled.
* a null set implies no restrictions * a null set implies no restrictions
* @param thumbMode pass true if the disassembling in Thumb Mode * @param thumbMode pass true if the disassembling in Thumb Mode
@ -70,10 +69,6 @@ public class ArmDisassembleCommand extends DisassembleCommand {
throw new UnsupportedOperationException(); throw new UnsupportedOperationException();
} }
/**
*
* @see ghidra.framework.cmd.BackgroundCommand#applyTo(ghidra.framework.model.DomainObject, ghidra.util.task.TaskMonitor)
*/
@Override @Override
synchronized public boolean applyTo(DomainObject obj, TaskMonitor monitor) { synchronized public boolean applyTo(DomainObject obj, TaskMonitor monitor) {
Program program = (Program) obj; Program program = (Program) obj;

View file

@ -110,7 +110,7 @@ public class DisassembleCommand extends BackgroundCommand {
* {@link #setSeedContext(DisassemblerContextImpl)} method. * {@link #setSeedContext(DisassemblerContextImpl)} method.
* The defaultSeedContext should remain unchanged while disassembler command * The defaultSeedContext should remain unchanged while disassembler command
* is actively running. * is actively running.
* @param contextOverrideValue context override value or null * @param initialContextValue the initial context value to set or null to clear it
*/ */
public void setInitialContext(RegisterValue initialContextValue) { public void setInitialContext(RegisterValue initialContextValue) {
if (initialContextValue != null) { if (initialContextValue != null) {
@ -129,9 +129,6 @@ public class DisassembleCommand extends BackgroundCommand {
this.enableAnalysis = enable; this.enableAnalysis = enable;
} }
/**
* @see ghidra.framework.cmd.Command#getStatusMsg()
*/
@Override @Override
public String getStatusMsg() { public String getStatusMsg() {
if (disassemblyPerformed) { if (disassemblyPerformed) {
@ -147,10 +144,6 @@ public class DisassembleCommand extends BackgroundCommand {
return "Disassembler requires a start which is an undefined code unit"; return "Disassembler requires a start which is an undefined code unit";
} }
/**
*
* @see ghidra.framework.cmd.BackgroundCommand#applyTo(ghidra.framework.model.DomainObject, ghidra.util.task.TaskMonitor)
*/
@Override @Override
synchronized public boolean applyTo(DomainObject obj, TaskMonitor monitor) { synchronized public boolean applyTo(DomainObject obj, TaskMonitor monitor) {
Program program = (Program) obj; Program program = (Program) obj;

View file

@ -48,9 +48,8 @@ public class Hcs12DisassembleCommand extends DisassembleCommand {
} }
/** /**
* Constructor for DisassembleCommand. * Constructor for Hcs12DisassembleCommand.
* @param startSet set of addresses to be the start of a disassembly. The * @param start address to be the start of a disassembly.
* Command object will attempt to start a disassembly at each address in this set.
* @param restrictedSet addresses that can be disassembled. * @param restrictedSet addresses that can be disassembled.
* a null set implies no restrictions * a null set implies no restrictions
* @param xgMode pass true if the disassembling in XGATE Mode * @param xgMode pass true if the disassembling in XGATE Mode
@ -70,10 +69,6 @@ public class Hcs12DisassembleCommand extends DisassembleCommand {
throw new UnsupportedOperationException(); throw new UnsupportedOperationException();
} }
/**
*
* @see ghidra.framework.cmd.BackgroundCommand#applyTo(ghidra.framework.model.DomainObject, ghidra.util.task.TaskMonitor)
*/
@Override @Override
synchronized public boolean applyTo(DomainObject obj, TaskMonitor monitor) { synchronized public boolean applyTo(DomainObject obj, TaskMonitor monitor) {
Program program = (Program) obj; Program program = (Program) obj;

View file

@ -27,7 +27,7 @@ import ghidra.util.exception.CancelledException;
import ghidra.util.task.TaskMonitor; import ghidra.util.task.TaskMonitor;
/** /**
* Command object for performing Arm/Thumb disassembly * Command object for performing Mips disassembly
*/ */
public class MipsDisassembleCommand extends DisassembleCommand { public class MipsDisassembleCommand extends DisassembleCommand {
@ -48,9 +48,8 @@ public class MipsDisassembleCommand extends DisassembleCommand {
} }
/** /**
* Constructor for DisassembleCommand. * Constructor for MipsDisassembleCommand.
* @param startSet set of addresses to be the start of a disassembly. The * @param start address to be the start of a disassembly.
* Command object will attempt to start a disassembly at each address in this set.
* @param restrictedSet addresses that can be disassembled. * @param restrictedSet addresses that can be disassembled.
* a null set implies no restrictions * a null set implies no restrictions
* @param mips16Mode pass true if the disassembling in mips16e Mode * @param mips16Mode pass true if the disassembling in mips16e Mode
@ -60,9 +59,6 @@ public class MipsDisassembleCommand extends DisassembleCommand {
this.mips16Mode = mips16Mode; this.mips16Mode = mips16Mode;
} }
/**
* @see ghidra.framework.cmd.Command#getName()
*/
@Override @Override
public String getName() { public String getName() {
return "Disassemble " + (mips16Mode ? "Mips16" : "Mips"); return "Disassemble " + (mips16Mode ? "Mips16" : "Mips");
@ -78,10 +74,6 @@ public class MipsDisassembleCommand extends DisassembleCommand {
throw new UnsupportedOperationException(); throw new UnsupportedOperationException();
} }
/**
*
* @see ghidra.framework.cmd.BackgroundCommand#applyTo(ghidra.framework.model.DomainObject, ghidra.util.task.TaskMonitor)
*/
@Override @Override
synchronized public boolean applyTo(DomainObject obj, TaskMonitor monitor) { synchronized public boolean applyTo(DomainObject obj, TaskMonitor monitor) {
Program program = (Program) obj; Program program = (Program) obj;

View file

@ -50,8 +50,7 @@ public class PowerPCDisassembleCommand extends DisassembleCommand {
/** /**
* Constructor for PowerPCDisassembleCommand. * Constructor for PowerPCDisassembleCommand.
* @param startSet set of addresses to be the start of a disassembly. The * @param start address to be the start of a disassembly.
* Command object will attempt to start a disassembly at each address in this set.
* @param restrictedSet addresses that can be disassembled. * @param restrictedSet addresses that can be disassembled.
* a null set implies no restrictions * a null set implies no restrictions
* @param vleMode pass true if the disassembling in PowerISA VLE Mode, otherwise * @param vleMode pass true if the disassembling in PowerISA VLE Mode, otherwise
@ -62,9 +61,6 @@ public class PowerPCDisassembleCommand extends DisassembleCommand {
this.vleMode = vleMode; this.vleMode = vleMode;
} }
/**
* @see ghidra.framework.cmd.Command#getName()
*/
@Override @Override
public String getName() { public String getName() {
return "Disassemble " + (vleMode ? "PPC-VLE" : "PPC"); return "Disassemble " + (vleMode ? "PPC-VLE" : "PPC");
@ -80,10 +76,6 @@ public class PowerPCDisassembleCommand extends DisassembleCommand {
throw new UnsupportedOperationException(); throw new UnsupportedOperationException();
} }
/**
*
* @see ghidra.framework.cmd.BackgroundCommand#applyTo(ghidra.framework.model.DomainObject, ghidra.util.task.TaskMonitor)
*/
@Override @Override
synchronized public boolean applyTo(DomainObject obj, TaskMonitor monitor) { synchronized public boolean applyTo(DomainObject obj, TaskMonitor monitor) {
Program program = (Program) obj; Program program = (Program) obj;

View file

@ -49,11 +49,15 @@ public class ApplyFunctionDataTypesCmd extends BackgroundCommand {
* Constructs a new command to apply all function signature data types * Constructs a new command to apply all function signature data types
* in the given data type manager. * in the given data type manager.
* *
* @param dtm data type manager containing the function signature data types * @param managers list of data type managers containing the function signature data types
* @param set set of addresses containing labels to match against function names. * @param set set of addresses containing labels to match against function names.
* The addresses must not already be included in the body of any existing function. * The addresses must not already be included in the body of any existing function.
* If null, all symbols will be processed * If null, all symbols will be processed
* @param source the source of this command * @param source the source of this command.
* @param alwaysReplace true to always replace the existing function signature with the
* function signature data type.
* @param createBookmarksEnabled true to create a bookmark when a function signature
* has been applied.
*/ */
public ApplyFunctionDataTypesCmd(List<DataTypeManager> managers, AddressSetView set, public ApplyFunctionDataTypesCmd(List<DataTypeManager> managers, AddressSetView set,
SourceType source, boolean alwaysReplace, boolean createBookmarksEnabled) { SourceType source, boolean alwaysReplace, boolean createBookmarksEnabled) {

View file

@ -112,7 +112,8 @@ public class CallDepthChangeInfo {
/** /**
* Construct a new CallDepthChangeInfo object. * Construct a new CallDepthChangeInfo object.
* @param func function to examine * @param function function to examine
* @param restrictSet set of addresses to restrict flow flowing to.
* @param frameReg register that is to have it's depth(value) change tracked * @param frameReg register that is to have it's depth(value) change tracked
* @param monitor monitor used to cancel the operation * @param monitor monitor used to cancel the operation
* *
@ -132,8 +133,8 @@ public class CallDepthChangeInfo {
* Construct a new CallDepthChangeInfo object. * Construct a new CallDepthChangeInfo object.
* *
* @param program program containing the function to examime * @param program program containing the function to examime
* @param restrictedSet set of addresses to restrict flow flowing to.
* @param addr address within the function to examine * @param addr address within the function to examine
* @param restrictSet set of addresses to restrict flow flowing to.
* @param frameReg register that is to have it's depth(value) change tracked * @param frameReg register that is to have it's depth(value) change tracked
* @param monitor monitor used to cancel the operation * @param monitor monitor used to cancel the operation
* @throws CancelledException * @throws CancelledException
@ -735,13 +736,13 @@ public class CallDepthChangeInfo {
return; return;
} }
/** // /**
* Checks the indicated function in the program to determine if it is a jump thunk // * Checks the indicated function in the program to determine if it is a jump thunk
* through a function pointer. // * through a function pointer.
* @param func the function to check // * @param func the function to check
* @param monitor status monitor for indicating progress and allowing cancel. // * @param monitor status monitor for indicating progress and allowing cancel.
* @returntrue if check if this is a jump thunk through a function pointer // * @return true if check if this is a jump thunk through a function pointer
*/ // */
// private boolean checkThunk(Function func, TaskMonitor monitor) { // private boolean checkThunk(Function func, TaskMonitor monitor) {
// Instruction instr = program.getListing().getInstructionAt(func.getEntryPoint()); // Instruction instr = program.getListing().getInstructionAt(func.getEntryPoint());
// if (instr == null) { // if (instr == null) {
@ -832,16 +833,17 @@ public class CallDepthChangeInfo {
} }
/** /**
* @param minAddress * @param addr the address to get the stack pointer depth at.
* @return * @return the stack pointer depth at the address.
*/ */
public int getSPDepth(Address addr) { public int getSPDepth(Address addr) {
return getRegDepth(addr, stackReg); return getRegDepth(addr, stackReg);
} }
/** /**
* @param minAddress * @param addr the address to get the register depth at.
* @return * @param reg the register to get the depth of.
* @return the depth of the register at the address.
*/ */
public int getRegDepth(Address addr, Register reg) { public int getRegDepth(Address addr, Register reg) {
// OK lets CHEAT... // OK lets CHEAT...
@ -874,8 +876,9 @@ public class CallDepthChangeInfo {
} }
/** /**
* @param minAddress * @param addr the address of the register value to get the representation of.
* @return * @param reg the register to get the representation of.
* @return the string representation of the register value.
*/ */
public String getRegValueRepresentation(Address addr, Register reg) { public String getRegValueRepresentation(Address addr, Register reg) {
return symEval.getRegisterValueRepresentation(addr, reg); return symEval.getRegisterValueRepresentation(addr, reg);

View file

@ -665,10 +665,11 @@ public class CreateFunctionCmd extends BackgroundCommand {
/** /**
* Recompute function body. An open transaction must already exist. * Recompute function body. An open transaction must already exist.
* @param program the program the function is in. * @param program the program the function is in.
* @param function the function to be fixed up. A null function will return false. * @param func the function to be fixed up. A null function will return false.
* @param monitor task monitor * @param monitor task monitor
* @return true if successful, false if cancelled or unable to fixup function or * @return true if successful, false if unable to fixup function or
* no function found containing the start address of the indicated instruction * no function found containing the start address of the indicated instruction
* @throws CancelledException if the function fixup is cancelled.
*/ */
public static boolean fixupFunctionBody(Program program, Function func, TaskMonitor monitor) public static boolean fixupFunctionBody(Program program, Function func, TaskMonitor monitor)
throws CancelledException { throws CancelledException {

View file

@ -64,12 +64,12 @@ public class CreateThunkFunctionCmd extends BackgroundCommand {
* converted to a thunk, otherwise an error will result. * converted to a thunk, otherwise an error will result.
* @param referencedFunctionAddr the function address to which this thunk refers. If no function * @param referencedFunctionAddr the function address to which this thunk refers. If no function
* exists at that specified referencedFunctionAddr one will be created per the following scheme: * exists at that specified referencedFunctionAddr one will be created per the following scheme:
* <pre><ul> * <br><ul>
* <li>If referencedFunctionAddr is not contained within a memory block, an external function will * <li>If referencedFunctionAddr is not contained within a memory block, an external function will<br>
* be created (a check will be done to look for an previously defined external location)</li> * be created (a check will be done to look for an previously defined external location)</li>
* <li>If referencedFunctionAddr corresponds to an instruction, a new function will be * <li>If referencedFunctionAddr corresponds to an instruction, a new function will be<br>
* created at that address.</li> * created at that address.</li>
* </ul></pre> * </ul>
*/ */
public CreateThunkFunctionCmd(Address entry, AddressSetView body, public CreateThunkFunctionCmd(Address entry, AddressSetView body,
Address referencedFunctionAddr, List<Address> referringThunkAddresses) { Address referencedFunctionAddr, List<Address> referringThunkAddresses) {
@ -88,12 +88,12 @@ public class CreateThunkFunctionCmd extends BackgroundCommand {
* converted to a thunk, otherwise an error will result. * converted to a thunk, otherwise an error will result.
* @param referencedFunctionAddr the function address to which this thunk refers. If no function * @param referencedFunctionAddr the function address to which this thunk refers. If no function
* exists at that specified referencedFunctionAddr one will be created per the following scheme: * exists at that specified referencedFunctionAddr one will be created per the following scheme:
* <pre><ul> * <br><ul>
* <li>If referencedFunctionAddr is not contained within a memory block, an external function will * <li>If referencedFunctionAddr is not contained within a memory block, an external function will<br>
* be created (a check will be done to look for an previously defined external location)</li> * be created (a check will be done to look for an previously defined external location)</li>
* <li>If referencedFunctionAddr corresponds to an instruction, a new function will be * <li>If referencedFunctionAddr corresponds to an instruction, a new function will be<br>
* created at that address.</li> * created at that address.</li>
* </ul></pre> * </ul>
*/ */
public CreateThunkFunctionCmd(Address entry, AddressSetView body, public CreateThunkFunctionCmd(Address entry, AddressSetView body,
Address referencedFunctionAddr) { Address referencedFunctionAddr) {
@ -113,14 +113,14 @@ public class CreateThunkFunctionCmd extends BackgroundCommand {
* converted to a thunk, otherwise an error will result. * converted to a thunk, otherwise an error will result.
* @param referencedSymbol the symbol which identifies the intended function to which this thunk refers. * @param referencedSymbol the symbol which identifies the intended function to which this thunk refers.
* If no function exists at that specified referencedSymbol location, one will be created per the following scheme: * If no function exists at that specified referencedSymbol location, one will be created per the following scheme:
* <pre><ul> * <br><ul>
* <li>If referencedFunctionAddr is not contained within a memory block, an external function will * <li>If referencedFunctionAddr is not contained within a memory block, an external function will<br>
* be created (a check will be done to look for an previously defined external location)</li> * be created (a check will be done to look for an previously defined external location)</li>
* <li>If referencedFunctionAddr corresponds to an instruction, a new function will be * <li>If referencedFunctionAddr corresponds to an instruction, a new function will be<br>
* created at that address.</li> * created at that address.</li>
* <li>If referencedSymbol corresponds to an external CODE symbol, it will be converted to an * <li>If referencedSymbol corresponds to an external CODE symbol, it will be converted to an<br>
* external FUNCTION</li> * external FUNCTION</li>
* </ul></pre> * </ul>
*/ */
public CreateThunkFunctionCmd(Address entry, AddressSetView body, Symbol referencedSymbol) { public CreateThunkFunctionCmd(Address entry, AddressSetView body, Symbol referencedSymbol) {
this(entry, body, (Address) null); this(entry, body, (Address) null);

View file

@ -31,7 +31,7 @@ import ghidra.util.exception.InvalidInputException;
* <a name="examples"></a> * <a name="examples"></a>
* Example strings: * Example strings:
* <ul> * <ul>
* <li>global{@link NamespaceUtils#NAMESPACE_DELIMITER &lt;delimiter&gt;}child1{@link NamespaceUtils#NAMESPACE_DELIMITER &lt;delimiter&gt;}child2 * <li>global{@link Namespace#NAMESPACE_DELIMITER ::}child1{@link Namespace#NAMESPACE_DELIMITER ::}child2
* <li>child1 * <li>child1
* </ul> * </ul>
* <p> * <p>

View file

@ -34,17 +34,17 @@ import javax.swing.JComponent;
status = PluginStatus.HIDDEN, status = PluginStatus.HIDDEN,
packageName = CorePluginPackage.NAME, packageName = CorePluginPackage.NAME,
category = PluginCategoryNames.UNMANAGED, category = PluginCategoryNames.UNMANAGED,
shortDescription = "Program Merge Manager", shortDescription = "DataType Archive Merge Manager",
description = "Manage merge of Programs" description = "Manage merge of DataType Archives"
) )
//@formatter:on //@formatter:on
public class DataTypeArchiveMergeManagerPlugin extends MergeManagerPlugin { public class DataTypeArchiveMergeManagerPlugin extends MergeManagerPlugin {
/** /**
* Constructor for plugin that handles multi-user merge of programs. * Constructor for plugin that handles multi-user merge of data type archives.
* @param tool the tool with the active program to be merged * @param tool the tool
* @param mergeManager the merge manager that will control the merge process * @param mergeManager the merge manager that will control the merge process
* @param program the current program * @param dataTypeArchive the data type archive
*/ */
public DataTypeArchiveMergeManagerPlugin( PluginTool tool, public DataTypeArchiveMergeManagerPlugin( PluginTool tool,
DataTypeArchiveMergeManager mergeManager, DataTypeArchiveMergeManager mergeManager,
@ -68,9 +68,6 @@ public class DataTypeArchiveMergeManagerPlugin extends MergeManagerPlugin {
// } // }
} }
/* (non-Javadoc)
* @see ghidra.framework.plugintool.Plugin#dispose()
*/
@Override @Override
protected void dispose() { protected void dispose() {
provider.dispose(); provider.dispose();

View file

@ -606,9 +606,7 @@ public abstract class MergeManager implements DomainObjectMergeManager {
/** /**
* Updates the current phase progress area in the default merge panel. * Updates the current phase progress area in the default merge panel.
* @param currentProgressPercentage the progress percentage completed for the current phase. * @param description a message describing what is currently occurring in this phase.
* This should be a value from 0 to 100.
* @param progressMessage a message indicating what is currently occurring in this phase.
* Null indicates to use the default message. * Null indicates to use the default message.
*/ */
@Override @Override

View file

@ -40,7 +40,7 @@ public abstract class MergeManagerPlugin extends Plugin implements ProgramaticUs
* Constructor for plugin that handles multi-user merge of programs. * Constructor for plugin that handles multi-user merge of programs.
* @param tool the tool with the active program to be merged * @param tool the tool with the active program to be merged
* @param mergeManager the merge manager that will control the merge process * @param mergeManager the merge manager that will control the merge process
* @param program the current program * @param domainObject the current domain object
*/ */
public MergeManagerPlugin(PluginTool tool, MergeManager mergeManager, public MergeManagerPlugin(PluginTool tool, MergeManager mergeManager,
UndoableDomainObject domainObject) { UndoableDomainObject domainObject) {

View file

@ -233,9 +233,7 @@ public class ProgramMultiUserMergeManager extends MergeManager {
/** /**
* Show the listing merge panel. * Show the listing merge panel.
* @param show true indicates to show the Listing merge panel. * @param goToAddress the address to goto.
* false indicates show the default component.
* @param goToAddress
*/ */
public void showListingMergePanel(final Address goToAddress) { public void showListingMergePanel(final Address goToAddress) {
SwingUtilities.invokeLater(() -> { SwingUtilities.invokeLater(() -> {

View file

@ -1345,7 +1345,7 @@ public class DataTypeMergeManager implements MergeResolver {
* Get the resolved data type for either the return type or a variable. * Get the resolved data type for either the return type or a variable.
* @param id id of FunctionDefinition * @param id id of FunctionDefinition
* @param paramID ID of either the return type or a variable * @param paramID ID of either the return type or a variable
* @param index >=0 is the index of the variable; <0 means the paramID is * @param index &gt;=0 is the index of the variable; &lt;0 means the paramID is
* the return type * the return type
* @param resolvedDataTypes hashtable to use for resolving * @param resolvedDataTypes hashtable to use for resolving
* @return resolved data type or the default data type if the data type * @return resolved data type or the default data type if the data type

View file

@ -2316,8 +2316,7 @@ abstract class AbstractFunctionMerger implements ListingMergeConstants {
/** /**
* Creates the panel for resolving a conflict due to a variable being removed. * Creates the panel for resolving a conflict due to a variable being removed.
* @param entryPt the function entry point for the function variables. * @param lvc the local variable conflict
* @param vars variables from the different programs [0]=Original, [1]=Latest, [2]=My
* @param monitor status monitor * @param monitor status monitor
* @return the panel * @return the panel
*/ */
@ -2390,7 +2389,7 @@ abstract class AbstractFunctionMerger implements ListingMergeConstants {
/** /**
* Updates the progress message details associated with this phase of the merge. * Updates the progress message details associated with this phase of the merge.
* @param progressMessage a message indicating what is currently occurring in this phase. * @param message a message indicating what is currently occurring in this phase.
* Null indicates to use the default message. * Null indicates to use the default message.
*/ */
protected void updateProgressMessage(String message) { protected void updateProgressMessage(String message) {

View file

@ -190,7 +190,7 @@ abstract class AbstractListingMerger implements ListingMerger, ListingMergeConst
} }
/** Return an address set that contains all addresses that make up the code /** Return an address set that contains all addresses that make up the code
* units containing the indicated address in the LATEST, MY, & ORIGINAL programs. * units containing the indicated address in the LATEST, MY, &amp; ORIGINAL programs.
* @param addr the address * @param addr the address
* @return the code unit address set * @return the code unit address set
*/ */
@ -199,8 +199,8 @@ abstract class AbstractListingMerger implements ListingMerger, ListingMergeConst
} }
/** Return an address set that contains all addresses that make up the code /** Return an address set that contains all addresses that make up the code
* units containing the indicated addresses in the LATEST, MY, & ORIGINAL programs. * units containing the indicated addresses in the LATEST, MY, &amp; ORIGINAL programs.
* @param addr the addresses * @param addrs the addresses
* @return the code unit address set * @return the code unit address set
*/ */
protected AddressSetView getCodeUnitAddressSet(AddressSet addrs) { protected AddressSetView getCodeUnitAddressSet(AddressSet addrs) {
@ -332,7 +332,7 @@ abstract class AbstractListingMerger implements ListingMerger, ListingMergeConst
/** /**
* Updates the progress bar associated with this phase of the merge. * Updates the progress bar associated with this phase of the merge.
* Before beginning to auto-merge the <code>totalChanges</code> and <code>changeNum<\code> must be set. * Before beginning to auto-merge the <code>totalChanges</code> and <code>changeNum</code> must be set.
* This method should then be called as changes are made to update the change bar. * This method should then be called as changes are made to update the change bar.
* This assumes that each change is equivalent in terms of shown progress. * This assumes that each change is equivalent in terms of shown progress.
* @param increment the number of changes completed relative to the total * @param increment the number of changes completed relative to the total
@ -353,7 +353,7 @@ abstract class AbstractListingMerger implements ListingMerger, ListingMergeConst
/** /**
* Updates the progress message details associated with this phase of the merge. * Updates the progress message details associated with this phase of the merge.
* @param progressMessage a message indicating what is currently occurring in this phase. * @param message a message indicating what is currently occurring in this phase.
* Null indicates to use the default message. * Null indicates to use the default message.
*/ */
protected void updateProgressMessage(String message) { protected void updateProgressMessage(String message) {
@ -376,7 +376,7 @@ abstract class AbstractListingMerger implements ListingMerger, ListingMergeConst
* phase of the merge. * phase of the merge.
* @param myPercentComplete the progress percentage completed for this merger. * @param myPercentComplete the progress percentage completed for this merger.
* This should be a value from 0 to 100. * This should be a value from 0 to 100.
* @param progressMessage a message indicating what is currently occurring in this phase. * @param message a message indicating what is currently occurring in this phase.
* Null indicates to use the default message. * Null indicates to use the default message.
*/ */
protected void updateProgress(int myPercentComplete, String message) { protected void updateProgress(int myPercentComplete, String message) {

View file

@ -45,9 +45,9 @@ import ghidra.util.task.TaskMonitor;
* program and the modified program being checked into version control. * program and the modified program being checked into version control.
* <br>Indirect conflicts include: * <br>Indirect conflicts include:
* <ul> * <ul>
* <li>bytes & code units</li> * <li>bytes &amp; code units</li>
* <li>bytes & equates</li> * <li>bytes &amp; equates</li>
* <li>code units & equates</li> * <li>code units &amp; equates</li>
* </ul> * </ul>
* <br>Important: This class is intended to be used only for a single program * <br>Important: This class is intended to be used only for a single program
* version merge. It should be constructed, followed by an autoMerge(), and lastly * version merge. It should be constructed, followed by an autoMerge(), and lastly

View file

@ -53,7 +53,6 @@ public abstract class ConflictPanel extends ChoiceComponent {
* row or 0 is returned. * row or 0 is returned.
* Each button or check box has an associated value that can be bitwise 'OR'ed together * Each button or check box has an associated value that can be bitwise 'OR'ed together
* to get the entire choice for the row. * to get the entire choice for the row.
* @param row the row of the conflict resolution table.
* @return the choice(s) currently selected. * @return the choice(s) currently selected.
*/ */
public abstract int getUseForAllChoice(); public abstract int getUseForAllChoice();

View file

@ -191,14 +191,8 @@ public class ExternalFunctionMerger extends AbstractFunctionMerger implements Li
/** /**
* Manages changes and conflicts for externals between the latest versioned * Manages changes and conflicts for externals between the latest versioned
* program and the modified program being checked into version control. * program and the modified program being checked into version control.
* @param mergeManager the top level merge manager for merging a program version. * @param listingMergeManager the top level merge manager for merging a program version.
* @param resultPgm the program to be updated with the result of the merge. * @param showListingPanel true to show the listing panel.
* This is the program that will actually get checked in.
* @param originalPgm the program that was checked out.
* @param latestPgm the latest checked-in version of the program.
* @param myPgm the program requesting to be checked in.
* @param latestChanges the address set of changes between original and latest versioned program.
* @param myChanges the address set of changes between original and my modified program.
*/ */
public ExternalFunctionMerger(ListingMergeManager listingMergeManager, public ExternalFunctionMerger(ListingMergeManager listingMergeManager,
boolean showListingPanel) { boolean showListingPanel) {

View file

@ -1654,7 +1654,7 @@ class FunctionMerger extends AbstractFunctionMerger implements ListingMerger {
} }
/** Return an address set that contains all addresses that make up the code /** Return an address set that contains all addresses that make up the code
* units containing the indicated address in the LATEST, MY, & ORIGINAL programs. * units containing the indicated address in the LATEST, MY, &amp; ORIGINAL programs.
* @param addr the address * @param addr the address
* @return the code unit address set * @return the code unit address set
*/ */
@ -1663,7 +1663,7 @@ class FunctionMerger extends AbstractFunctionMerger implements ListingMerger {
} }
/** Return an address set that contains all addresses that make up the code /** Return an address set that contains all addresses that make up the code
* units containing the indicated addresses in the LATEST, MY, & ORIGINAL programs. * units containing the indicated addresses in the LATEST, MY, &amp; ORIGINAL programs.
* @param addr the addresses * @param addr the addresses
* @return the code unit address set * @return the code unit address set
*/ */
@ -1762,7 +1762,7 @@ class FunctionMerger extends AbstractFunctionMerger implements ListingMerger {
/** /**
* Updates the progress bar associated with this phase of the merge. * Updates the progress bar associated with this phase of the merge.
* Before beginning to auto-merge the <code>totalChanges</code> and <code>changeNum<\code> must be set. * Before beginning to auto-merge the <code>totalChanges</code> and <code>changeNum</code> must be set.
* This method should then be called as changes are made to update the change bar. * This method should then be called as changes are made to update the change bar.
* This assumes that each change is equivalent in terms of shown progress. * This assumes that each change is equivalent in terms of shown progress.
* @param increment the number of changes completed relative to the total * @param increment the number of changes completed relative to the total

View file

@ -42,7 +42,7 @@ import ghidra.util.task.TaskMonitor;
* <li>functions</li> * <li>functions</li>
* <li>symbols</li> * <li>symbols</li>
* <li>references [memory, stack, and external]</li> * <li>references [memory, stack, and external]</li>
* <li>comments [plate, pre, end-of-line, repeatable, and post]/li> * <li>comments [plate, pre, end-of-line, repeatable, and post]</li>
* <li>properties</li> * <li>properties</li>
* <li>bookmarks</li> * <li>bookmarks</li>
* </ul> * </ul>

View file

@ -35,10 +35,10 @@ interface ListingMerger {
* Performs the automatic merge for all changes in my Checked Out program version. * Performs the automatic merge for all changes in my Checked Out program version.
* It also determines the conflicts requiring manual resolution. * It also determines the conflicts requiring manual resolution.
* @param monitor task monitor for informing the user of progress. * @param monitor task monitor for informing the user of progress.
* @param progressMin minimum progress value, between 0 & 100, for this auto merge. * @param progressMin minimum progress value, between 0 &amp; 100, for this auto merge.
* The merge manager's progress should be updated from progressMin to progressMax * The merge manager's progress should be updated from progressMin to progressMax
* as the autoMerge occurs. * as the autoMerge occurs.
* @param progressMax maximum progress value, between 0 & 100, for this auto merge. * @param progressMax maximum progress value, between 0 &amp; 100, for this auto merge.
* @throws ProgramConflictException if the programs for different versions are not compatible. * @throws ProgramConflictException if the programs for different versions are not compatible.
* @throws MemoryAccessException if memory can't be accessed to get/set byte values. * @throws MemoryAccessException if memory can't be accessed to get/set byte values.
* @throws CancelledException if the user cancels the merge. * @throws CancelledException if the user cancels the merge.

View file

@ -364,7 +364,8 @@ public class ListingMergePanel extends JPanel
} }
/** /**
* @param navigator * Adds a button press listener.
* @param listener the listener to add.
*/ */
public void addButtonPressedListener(ButtonPressedListener listener) { public void addButtonPressedListener(ButtonPressedListener listener) {
for (ListingPanel listingPanel : listingPanels) { for (ListingPanel listingPanel : listingPanels) {

View file

@ -42,7 +42,7 @@ public class ListingMergePanelPlugin extends Plugin implements ProgramaticUseOnl
/** /**
* Constructor * Constructor
* @param tool merge tool * @param tool merge tool
* @param mergeManager merge manager * @param mergePanel merge panel
*/ */
public ListingMergePanelPlugin(PluginTool tool, ListingMergePanel mergePanel) { public ListingMergePanelPlugin(PluginTool tool, ListingMergePanel mergePanel) {
super(tool); super(tool);

View file

@ -73,6 +73,7 @@ public class ProgramTreeMergeManager implements MergeResolver {
/** /**
* Construct a new manager for merging trees * Construct a new manager for merging trees
* @param mergeManager the program merge manager
* @param resultProgram latest version of the Program that is the * @param resultProgram latest version of the Program that is the
* destination for changes applied from the source program * destination for changes applied from the source program
* @param myProgram source of changes to apply to the destination * @param myProgram source of changes to apply to the destination
@ -82,7 +83,6 @@ public class ProgramTreeMergeManager implements MergeResolver {
* resultProgram and latestProgram start out as being identical * resultProgram and latestProgram start out as being identical
* @param latestChangeSet change set of the destination program * @param latestChangeSet change set of the destination program
* @param myChangeSet change set for the source program * @param myChangeSet change set for the source program
* @param monitor
*/ */
public ProgramTreeMergeManager(ProgramMultiUserMergeManager mergeManager, public ProgramTreeMergeManager(ProgramMultiUserMergeManager mergeManager,
Program resultProgram, Program myProgram, Program originalProgram, Program resultProgram, Program myProgram, Program originalProgram,
@ -592,9 +592,9 @@ public class ProgramTreeMergeManager implements MergeResolver {
/** /**
* Covers case 6: dest content changed, source content changed; * Covers case 6: dest content changed, source content changed;
* case 7: dest name change & content changed, source name changed & content changed * case 7: dest name change &amp; content changed, source name changed &amp; content changed
* case 8: dest name & content changed, source content changed * case 8: dest name &amp; content changed, source content changed
* case 9: dest content changed, source name & content changed * case 9: dest content changed, source name &amp; content changed
* @throws CancelledException * @throws CancelledException
*/ */
private void keepOtherOrCreateTree(ProgramModule origRoot, ProgramModule sourceRoot, ProgramModule destRoot, private void keepOtherOrCreateTree(ProgramModule origRoot, ProgramModule sourceRoot, ProgramModule destRoot,
@ -738,7 +738,7 @@ public class ProgramTreeMergeManager implements MergeResolver {
} }
/** /**
* Case 4: destination Name & content changed, source name changed * Case 4: destination Name &amp; content changed, source name changed
* @param sourceRoot source root module * @param sourceRoot source root module
* @param sourceTreeName source tree name * @param sourceTreeName source tree name
* @param destTreeName destination tree name * @param destTreeName destination tree name
@ -793,7 +793,7 @@ public class ProgramTreeMergeManager implements MergeResolver {
} }
/** /**
* Case 5: destination Name changed, source name & content changed * Case 5: destination Name changed, source name &amp; content changed
* @param sourceRoot source root module * @param sourceRoot source root module
* @param sourceTreeName source tree name * @param sourceTreeName source tree name
* @param destTreeName destination tree name * @param destTreeName destination tree name

View file

@ -164,7 +164,7 @@ public class ConflictUtility {
* Creates a standard address set conflict count message. This indicates * Creates a standard address set conflict count message. This indicates
* which address or address range with conflicts you are resolving of some * which address or address range with conflicts you are resolving of some
* total number of addresses or address ranges with conflicts. * total number of addresses or address ranges with conflicts.
* @param caddressNum the current conflicting address number. * @param addressNum the current conflicting address number.
* @param totalAddresses the total number of conflicting addresses. * @param totalAddresses the total number of conflicting addresses.
* @param isRange true if the current conflict is for an address range. * @param isRange true if the current conflict is for an address range.
* @return the message string containing HTML tags. * @return the message string containing HTML tags.

View file

@ -34,20 +34,24 @@ import ghidra.program.util.ProgramSelection;
* <p> * <p>
* Subclasses should override the following methods if they are interested * Subclasses should override the following methods if they are interested
* in the corresponding events: * in the corresponding events:
* <ul>
* <LI> <code>programOpened(Program)</code> * <LI> <code>programOpened(Program)</code>
* <LI> <code>programClosed(Program)</code> * <LI> <code>programClosed(Program)</code>
* <LI> <code>locationChanged(ProgramLocation)</code> * <LI> <code>locationChanged(ProgramLocation)</code>
* <LI> <code>selectionChanged(ProgramSelection) </code> * <LI> <code>selectionChanged(ProgramSelection) </code>
* <LI> <code>highlightChanged(ProgramSelection) </code> * <LI> <code>highlightChanged(ProgramSelection) </code>
* </LI> * </LI>
* </ul>
* <br> * <br>
* This class will handle the enablement and add to popup state for * This class will handle the enablement and add to popup state for
* plugin actions when subclasses call any of the following methods: * plugin actions when subclasses call any of the following methods:
* <ul>
* <LI><code>enableOnHighlight(PluginAction)</code> * <LI><code>enableOnHighlight(PluginAction)</code>
* <LI><code>enableOnLocation(PluginAction)</code> * <LI><code>enableOnLocation(PluginAction)</code>
* <LI><code>enableOnProgram(PluginAction)</code> * <LI><code>enableOnProgram(PluginAction)</code>
* <LI><code>enableOnSelection(PluginAction)</code> * <LI><code>enableOnSelection(PluginAction)</code>
* </LI> * </LI>
* </ul>
* *
*/ */
public abstract class ProgramPlugin extends Plugin { public abstract class ProgramPlugin extends Plugin {
@ -63,7 +67,6 @@ public abstract class ProgramPlugin extends Plugin {
/** /**
* Constructs a new program plugin * Constructs a new program plugin
* @param name plugin name the name of this plugin
* @param plugintool tool the parent tool for this plugin * @param plugintool tool the parent tool for this plugin
* @param consumeLocationChange true if this plugin should consume ProgramLocation events * @param consumeLocationChange true if this plugin should consume ProgramLocation events
* @param consumeSelectionChange true if this plugin should consume ProgramSelection events * @param consumeSelectionChange true if this plugin should consume ProgramSelection events

View file

@ -40,10 +40,10 @@ public class AnalysisBackgroundCommand extends MergeableBackgroundCommand {
private boolean markAsAnalyzed; private boolean markAsAnalyzed;
/** /**
* When command is called, call this analyzer with the given address set * Background Command to perform Auto Analysis on a program.
* *
* @param analyzer the analyzer to call * @param mgr the program's AutoAnalysisManager.
* @param set the set to pass to the analyzer * @param markAsAnalyzed true to set the analyzed flag after analysis.
*/ */
public AnalysisBackgroundCommand(AutoAnalysisManager mgr, boolean markAsAnalyzed) { public AnalysisBackgroundCommand(AutoAnalysisManager mgr, boolean markAsAnalyzed) {
super("Auto Analysis", true, true, false); super("Auto Analysis", true, true, false);
@ -51,9 +51,6 @@ public class AnalysisBackgroundCommand extends MergeableBackgroundCommand {
this.markAsAnalyzed = markAsAnalyzed; this.markAsAnalyzed = markAsAnalyzed;
} }
/* (non-Javadoc)
* @see ghidra.framework.cmd.BackgroundCommand#applyTo(ghidra.framework.model.DomainObject, ghidra.util.task.TaskMonitor)
*/
@Override @Override
public boolean applyTo(DomainObject obj, TaskMonitor monitor) { public boolean applyTo(DomainObject obj, TaskMonitor monitor) {
if (markAsAnalyzed) { if (markAsAnalyzed) {

View file

@ -70,7 +70,7 @@ public class ArchiveDialog extends DialogComponentProvider {
/** /**
* Define the Main panel for the dialog here. * Define the Main panel for the dialog here.
* @return JPanel the completed <CODE>Main Panel<\CODE> * @return JPanel the completed <CODE>Main Panel</CODE>
*/ */
protected JPanel buildMainPanel() { protected JPanel buildMainPanel() {
GridBagLayout gbl = new GridBagLayout(); GridBagLayout gbl = new GridBagLayout();

View file

@ -217,7 +217,7 @@ public class AssembleDockingAction extends DockingAction {
} }
/** /**
* Retrieve the location in the code viewer's {@link FieldPane} for the field at the given * Retrieve the location in the code viewer's {@link FieldPanel} for the field at the given
* address having the given header text * address having the given header text
* @param addr the address * @param addr the address
* @param fieldName the name of the field * @param fieldName the name of the field

View file

@ -208,7 +208,7 @@ public class AssemblyDualTextField {
/** /**
* Represents the description of an error encountered during parsing or assembling * Represents the description of an error encountered during parsing or assembling
* @note not used until error descriptions improve * NOTE: not used until error descriptions improve
*/ */
static class AssemblyError extends AssemblyCompletion { static class AssemblyError extends AssemblyCompletion {
private String text; private String text;
@ -488,7 +488,7 @@ public class AssemblyDualTextField {
/** /**
* Set the visibility of the text box(es) * Set the visibility of the text box(es)
* @param determines whether both are hidden, the dual variant is shown, or the single variant is shown. * @param visibility the VisibilityMode to set.
*/ */
public void setVisible(VisibilityMode visibility) { public void setVisible(VisibilityMode visibility) {
switch (visibility) { switch (visibility) {
@ -510,7 +510,7 @@ public class AssemblyDualTextField {
/** /**
* Add a focus listener to the box(es) * Add a focus listener to the box(es)
* *
* @note The listener will not fire when focus passes among the linked boxes of the dual variant. * NOTE: The listener will not fire when focus passes among the linked boxes of the dual variant.
* @param listener the listener * @param listener the listener
*/ */
public void addFocusListener(FocusListener listener) { public void addFocusListener(FocusListener listener) {

View file

@ -81,10 +81,6 @@ public class BlockModelServicePlugin extends ProgramPlugin
private StringWithChoicesEditor editor; private StringWithChoicesEditor editor;
/**
* Constructor.
* @param plugintool tool
*/
public BlockModelServicePlugin(PluginTool tool) { public BlockModelServicePlugin(PluginTool tool) {
super(tool, false, false); super(tool, false, false);
@ -128,9 +124,8 @@ public class BlockModelServicePlugin extends ProgramPlugin
/** /**
* Handle an option change * Handle an option change
* @param options options object containing the property that changed * @param newOptions options object containing the property that changed
* @param group * @param optionName name of option that changed
* @param name name of option that changed
* @param oldValue old value of the option * @param oldValue old value of the option
* @param newValue new value of the option * @param newValue new value of the option
*/ */

View file

@ -162,9 +162,6 @@ public class BookmarkDeleteCmd implements Command {
return presentationName; return presentationName;
} }
/**
* @see ghidra.framework.cmd.Command#applyTo(ghidra.framework.plugintool.PluginTool, ghidra.framework.model.DomainObject)
*/
@Override @Override
public boolean applyTo(DomainObject obj) { public boolean applyTo(DomainObject obj) {
@ -244,17 +241,11 @@ public class BookmarkDeleteCmd implements Command {
} }
} }
/**
* @see ghidra.framework.cmd.Command#getStatusMsg()
*/
@Override @Override
public String getStatusMsg() { public String getStatusMsg() {
return null; return null;
} }
/**
* @see ghidra.framework.cmd.Command#getName()
*/
@Override @Override
public String getName() { public String getName() {
return presentationName; return presentationName;

View file

@ -43,10 +43,12 @@ public class BookmarkEditCmd implements Command {
private String presentationName; private String presentationName;
/** /**
* Set a Bookmark. When setting a bookmark, all fields are used except the address * Edit a Bookmark. When editing a bookmark, all fields are used except the address
* which is determined by the first address within each range of the set. * which is determined by the first address within each range of the set.
* @param template bookmark template * @param set list of bookmark addresses.
* @param set list off bookmark addresses * @param type the bookmark type.
* @param category the bookmark category.
* @param comment the bookmark comment.
*/ */
public BookmarkEditCmd(AddressSetView set, String type, String category, String comment) { public BookmarkEditCmd(AddressSetView set, String type, String category, String comment) {
this.type = type; this.type = type;
@ -59,10 +61,12 @@ public class BookmarkEditCmd implements Command {
} }
/** /**
* Set a Bookmark. When setting a bookmark, all fields are used except the address * Edit a Bookmark. When editing a bookmark, all fields are used except the address
* which is provided by the addrs parameter. * which is provided by the addrs parameter.
* @param template bookmark template * @param addr the bookmark address.
* @param set list off bookmark addresses * @param type the bookmark type.
* @param category the bookmark category.
* @param comment the bookmark comment.
*/ */
public BookmarkEditCmd(Address addr, String type, String category, String comment) { public BookmarkEditCmd(Address addr, String type, String category, String comment) {
this.type = type; this.type = type;
@ -90,9 +94,7 @@ public class BookmarkEditCmd implements Command {
return presentationName; return presentationName;
} }
/** @Override
* @see ghidra.framework.cmd.Command#applyTo(ghidra.framework.plugintool.PluginTool, ghidra.framework.model.DomainObject)
*/
public boolean applyTo(DomainObject obj) { public boolean applyTo(DomainObject obj) {
BookmarkManager mgr = ((Program) obj).getBookmarkManager(); BookmarkManager mgr = ((Program) obj).getBookmarkManager();
@ -113,16 +115,12 @@ public class BookmarkEditCmd implements Command {
return true; return true;
} }
/** @Override
* @see ghidra.framework.cmd.Command#getStatusMsg()
*/
public String getStatusMsg() { public String getStatusMsg() {
return null; return null;
} }
/** @Override
* @see ghidra.framework.cmd.Command#getName()
*/
public String getName() { public String getName() {
return presentationName; return presentationName;
} }

View file

@ -63,7 +63,6 @@ public class ClearCmd extends BackgroundCommand {
* use {@link #ClearCmd(AddressSetView,ClearOptions)}. * use {@link #ClearCmd(AddressSetView,ClearOptions)}.
* *
* @param view the addresses over which to clear * @param view the addresses over which to clear
* @param options the options used while clearing
*/ */
public ClearCmd(AddressSetView view) { public ClearCmd(AddressSetView view) {
this(view, null, view.getNumAddresses() < EVENT_LIMIT); this(view, null, view.getNumAddresses() < EVENT_LIMIT);

View file

@ -71,9 +71,6 @@ public class ClearFlowAndRepairCmd extends BackgroundCommand {
this.repairFunctions = repair; this.repairFunctions = repair;
} }
/**
* @see ghidra.framework.cmd.BackgroundCommand#applyTo(ghidra.framework.plugintool.PluginTool, ghidra.framework.model.DomainObject, ghidra.util.task.TaskMonitor)
*/
@Override @Override
public boolean applyTo(DomainObject obj, TaskMonitor monitor) { public boolean applyTo(DomainObject obj, TaskMonitor monitor) {

View file

@ -75,7 +75,7 @@ public interface ColorizingService {
* @param set The address at which the given color will be applied * @param set The address at which the given color will be applied
* @param color The color to apply * @param color The color to apply
* *
* @see #clearBackgroundColor(AddressSetView)) * @see #clearBackgroundColor(AddressSetView)
* @see #getBackgroundColor(Address) * @see #getBackgroundColor(Address)
*/ */
public void setBackgroundColor(AddressSetView set, Color color); public void setBackgroundColor(AddressSetView set, Color color);

View file

@ -839,11 +839,11 @@ public abstract class CompositeEditorPanel extends JPanel
/** /**
* Get the drag actions supported by this drag source: * Get the drag actions supported by this drag source:
* <UL> * <ul>
* <li>DnDConstants.ACTION_MOVE * <li>DnDConstants.ACTION_MOVE
* <li>DnDConstants.ACTION_COPY * <li>DnDConstants.ACTION_COPY
* <li>DnDConstants.ACTION_COPY_OR_MOVE * <li>DnDConstants.ACTION_COPY_OR_MOVE
* </li> * </ul>
* *
* @return the drag actions * @return the drag actions
*/ */

View file

@ -16,6 +16,8 @@
*/ */
package ghidra.app.plugin.core.datamgr.archive; package ghidra.app.plugin.core.datamgr.archive;
import ghidra.program.model.data.DataTypeManager;
public interface ArchiveManagerListener { public interface ArchiveManagerListener {
/** /**
* Called when a new Archive is opened. * Called when a new Archive is opened.

View file

@ -53,13 +53,13 @@ import ghidra.util.exception.UsrException;
* *
* *
* *
* @todo Change the PseudoCodeUnit's getComment(int) method or change its * TODO Change the PseudoCodeUnit's getComment(int) method or change its
* getPreview(int) method not to call getComment(int) and then change * getPreview(int) method not to call getComment(int) and then change
* this class to not handle the UnsupportedOperationException. * this class to not handle the UnsupportedOperationException.
* @todo are the category and names correct? * TODO are the category and names correct?
* @todo decide how to represent multiple selections in the display * TODO decide how to represent multiple selections in the display
* *
* @todo Potential user options: * TODO Potential user options:
* -look ahead count * -look ahead count
* -to or to not display multiple selections * -to or to not display multiple selections
* -change the format of the preview displayed * -change the format of the preview displayed

View file

@ -92,7 +92,7 @@ class InstructionInfoProvider extends ComponentProviderAdapter implements Domain
/** /**
* Define the Main panel. * Define the Main panel.
* *
* @return JPanel the completed <CODE>Main Panel<\CODE> * @return JPanel the completed <CODE>Main Panel</CODE>
*/ */
protected JPanel buildMainPanel(boolean isDynamic) { protected JPanel buildMainPanel(boolean isDynamic) {

View file

@ -77,7 +77,7 @@ public class MnemonicSearchPlugin extends Plugin {
/** /**
* Retrieves the selection region from the program, builds the search string, and pops * Retrieves the selection region from the program, builds the search string, and pops
* up the @{link MemSearchDialog}. * up the {@link MemSearchDialog}.
* *
* @param context * @param context
* @param useOps * @param useOps

View file

@ -49,14 +49,16 @@ import docking.action.MenuData;
* tool. Selection is based on the initial selection or if there is no selection * tool. Selection is based on the initial selection or if there is no selection
* then on where the cursor is located in the program.<BR> * then on where the cursor is located in the program.<BR>
* This plugin provides the following types of selection:<BR> * This plugin provides the following types of selection:<BR>
* <UL>Select by following the flow from the specified address(es) onward. * <ul>
* Properties indicate whether or not CALLS or JUMPS should be followed.</UL> * <li>Select by following the flow from the specified address(es) onward.
* <UL>Select the subroutine(s) for the specified address(es).</UL> * Properties indicate whether or not CALLS or JUMPS should be followed.</li>
* <UL>Select the function(s) for the specified address(es).</UL> * <li>Select the subroutine(s) for the specified address(es).</li>
* <UL>Select dead subroutine(s) for the specified address(es).</UL> * <li>Select the function(s) for the specified address(es).</li>
* <UL>Select the current program changes.</UL> * <li>Select dead subroutine(s) for the specified address(es).</li>
* <UL>Select by following the flow to the specified address(es). * <li>Select the current program changes.</li>
* Properties indicate whether or not CALLS or JUMPS should be followed.</UL> * <li>Select by following the flow to the specified address(es).
* Properties indicate whether or not CALLS or JUMPS should be followed.</li>
* </UL>
*/ */
//@formatter:off //@formatter:off
@PluginInfo( @PluginInfo(

View file

@ -32,7 +32,7 @@ import ghidra.util.table.field.*;
import ghidra.util.task.TaskMonitor; import ghidra.util.task.TaskMonitor;
/** /**
* Table model for the Search -> For Strings... result dialog. * Table model for the Search -&gt; For Strings... result dialog.
* <p> * <p>
*/ */
public class StringTableModel extends AddressBasedTableModel<FoundString> { public class StringTableModel extends AddressBasedTableModel<FoundString> {

View file

@ -52,7 +52,7 @@ import ghidra.util.task.TaskLauncher;
import resources.ResourceManager; import resources.ResourceManager;
/** /**
* Component provider for the Search -> For Strings... result dialog. * Component provider for the Search -&gt; For Strings... result dialog.
*/ */
public class StringTableProvider extends ComponentProviderAdapter implements DomainObjectListener { public class StringTableProvider extends ComponentProviderAdapter implements DomainObjectListener {
private static final ImageIcon ICON = ResourceManager.loadImage("images/kmessedwords.png"); private static final ImageIcon ICON = ResourceManager.loadImage("images/kmessedwords.png");

View file

@ -40,8 +40,6 @@ public class EditExternalLocationAction extends DockingAction {
* Creates the action for editing an existing external location or external function in the * Creates the action for editing an existing external location or external function in the
* symbol tree. * symbol tree.
* @param plugin the symbol tree plugin, which owns this action. * @param plugin the symbol tree plugin, which owns this action.
* @param contextClass context class specific to plugin to be used to differentiate
* ProgramSymbolActionContext instances.
*/ */
public EditExternalLocationAction(Plugin plugin) { public EditExternalLocationAction(Plugin plugin) {
super("Edit External Location", plugin.getName()); super("Edit External Location", plugin.getName());

View file

@ -73,7 +73,7 @@ import ghidra.util.table.AddressSetTableModel;
import ghidra.util.task.TaskMonitor; import ghidra.util.task.TaskMonitor;
/** /**
* <h1>Ghidra Script Development.</h1> * <h2>Ghidra Script Development.</h2>
* In order to write a script: * In order to write a script:
* <ol> * <ol>
* <li>Ghidra script must be written in Java.</li> * <li>Ghidra script must be written in Java.</li>
@ -96,11 +96,11 @@ import ghidra.util.task.TaskMonitor;
* } * }
* } * }
* </pre> * </pre>
* <h2>Ghidra Script State</h2> * <h3>Ghidra Script State</h3>
* <blockquote> * <blockquote>
* <p> * <p>
* All scripts, when run, will be handed the current state in the form of class * All scripts, when run, will be handed the current state in the form of class
* instance variable. These variables are:</p> * instance variable. These variables are:
* <ol> * <ol>
* <li><code>currentProgram</code>: the active program</li> * <li><code>currentProgram</code>: the active program</li>
* <li><code>currentAddress</code>: the address of the current cursor location in the tool</li> * <li><code>currentAddress</code>: the address of the current cursor location in the tool</li>
@ -113,7 +113,7 @@ import ghidra.util.task.TaskMonitor;
* </ol> * </ol>
* </blockquote> * </blockquote>
* *
* <h2>Hello World Example</h2> * <h3>Hello World Example</h3>
* This example, when run, will simply print &quot;Hello World&quot; into the Ghidra console. * This example, when run, will simply print &quot;Hello World&quot; into the Ghidra console.
* <pre> * <pre>
* public class HelloWorldScript extends GhidraScript { * public class HelloWorldScript extends GhidraScript {
@ -957,16 +957,15 @@ public abstract class GhidraScript extends FlatProgramAPI {
* <p> * <p>
* For examples, see the included <code>FormatExampleScript</code>. * For examples, see the included <code>FormatExampleScript</code>.
* <p> * <p>
* <b><u>Note:</u> This method will not: * <b><u>Note:</u> This method will not:</b>
* <ul> * <ul>
* <li>print out the name of the script, as does {@link #println(String)}</li> * <li><b>print out the name of the script, as does {@link #println(String)}</b></li>
* <li>print a newline</li> * <li><b>print a newline</b></li>
* </ul> * </ul>
* </b>
* If you would like the name of the script to precede you message, then you must add that * If you would like the name of the script to precede you message, then you must add that
* yourself. The {@link #println(String)} does this via the following code: * yourself. The {@link #println(String)} does this via the following code:
* <pre> * <pre>
* String messageWithSource = getScriptName() + "> " + message; * String messageWithSource = getScriptName() + "&gt; " + message;
* </pre> * </pre>
* *
* @param message the message to format * @param message the message to format
@ -992,7 +991,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
* If you would like the name of the script to precede you message, then you must add that * If you would like the name of the script to precede you message, then you must add that
* yourself. The {@link #println(String)} does this via the following code: * yourself. The {@link #println(String)} does this via the following code:
* <pre> * <pre>
* String messageWithSource = getScriptName() + "> " + message; * String messageWithSource = getScriptName() + "&gt; " + message;
* </pre> * </pre>
* *
* @param message the message to print * @param message the message to print
@ -2002,7 +2001,6 @@ public abstract class GhidraScript extends FlatProgramAPI {
* invalid or missing .properties value. * invalid or missing .properties value.
* </li> * </li>
* </ol> * </ol>
* </p>
* *
* @param title the title of the dialog (in GUI mode) or the first part of the variable name * @param title the title of the dialog (in GUI mode) or the first part of the variable name
* (in headless mode or when using using .properties file) * (in headless mode or when using using .properties file)
@ -2085,7 +2083,6 @@ public abstract class GhidraScript extends FlatProgramAPI {
* the .properties value (if it exists), or throws an Exception if there is an invalid * the .properties value (if it exists), or throws an Exception if there is an invalid
* or missing .properties value.</li> * or missing .properties value.</li>
* </ol> * </ol>
* </p>
* *
* @param title the title of the dialog (in GUI mode) or the first part of the variable name * @param title the title of the dialog (in GUI mode) or the first part of the variable name
* (in headless mode or when using .properties file) * (in headless mode or when using .properties file)
@ -2193,7 +2190,6 @@ public abstract class GhidraScript extends FlatProgramAPI {
* representing the .properties value (if it exists), or throws an Exception if there * representing the .properties value (if it exists), or throws an Exception if there
* is an invalid or missing .properties value.</li> * is an invalid or missing .properties value.</li>
* </ol> * </ol>
* </p>
* @param title the title of the dialog (in GUI mode) or the first part of the variable name * @param title the title of the dialog (in GUI mode) or the first part of the variable name
* (in headless mode or when using .properties file) * (in headless mode or when using .properties file)
* @param approveButtonText the approve button text (in GUI mode - typically, this would be * @param approveButtonText the approve button text (in GUI mode - typically, this would be
@ -2280,7 +2276,6 @@ public abstract class GhidraScript extends FlatProgramAPI {
* project, then that value is returned. Otherwise, an Exception is thrown if there is * project, then that value is returned. Otherwise, an Exception is thrown if there is
* an invalid or missing .properties value.</li> * an invalid or missing .properties value.</li>
* </ol> * </ol>
* </p>
* *
* @param title the title of the dialog (GUI) or the variable name (headless or when * @param title the title of the dialog (GUI) or the variable name (headless or when
* using .properties file) * using .properties file)
@ -2359,7 +2354,6 @@ public abstract class GhidraScript extends FlatProgramAPI {
* or missing .properties value. * or missing .properties value.
* </li> * </li>
* </ol> * </ol>
* </p>
* *
* @param title the title of the dialog (in GUI mode) or the first part of the variable name * @param title the title of the dialog (in GUI mode) or the first part of the variable name
* (in headless mode or when using .properties file) * (in headless mode or when using .properties file)
@ -2439,7 +2433,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
* .properties value (if it exists), or throws an Exception if there is an invalid or * .properties value (if it exists), or throws an Exception if there is an invalid or
* missing .properties value.</li> * missing .properties value.</li>
* </ol> * </ol>
* </p> *
* *
* @param title the title of the dialog (in GUI mode) or the first part of the variable name * @param title the title of the dialog (in GUI mode) or the first part of the variable name
* (in headless mode or when using .properties file) * (in headless mode or when using .properties file)
@ -2512,7 +2506,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
* .properties value (if it exists), or throws an Exception if there is an invalid or * .properties value (if it exists), or throws an Exception if there is an invalid or
* missing .properties value.</li> * missing .properties value.</li>
* </ol> * </ol>
* </p> *
* *
* @param title the title of the dialog (in GUI mode) or the first part of the variable name * @param title the title of the dialog (in GUI mode) or the first part of the variable name
* (in headless mode or when using .properties file) * (in headless mode or when using .properties file)
@ -2586,7 +2580,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
* .properties byte pattern value (if it exists), or throws an Exception if there is * .properties byte pattern value (if it exists), or throws an Exception if there is
* an invalid or missing .properties value.</li> * an invalid or missing .properties value.</li>
* </ol> * </ol>
* </p> *
* *
* @param title the title of the dialog (in GUI mode) or the first part of the variable * @param title the title of the dialog (in GUI mode) or the first part of the variable
* name (in headless mode or when using .properties file) * name (in headless mode or when using .properties file)
@ -2645,7 +2639,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
* then that value is returned. Otherwise, an Exception is thrown if there is an * then that value is returned. Otherwise, an Exception is thrown if there is an
* invalid or missing .properties value.</li> * invalid or missing .properties value.</li>
* </ol> * </ol>
* </p> *
* *
* @param title the title of the pop-up dialog (in GUI mode) or the variable name (in * @param title the title of the pop-up dialog (in GUI mode) or the variable name (in
* headless mode) * headless mode)
@ -2740,7 +2734,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
* then that value is returned. Otherwise, an Exception is thrown if there is an invalid * then that value is returned. Otherwise, an Exception is thrown if there is an invalid
* or missing .properties value.</li> * or missing .properties value.</li>
* </ol> * </ol>
* </p> *
* @param title the title of the pop-up dialog (in GUI mode) or the variable name (in headless * @param title the title of the pop-up dialog (in GUI mode) or the variable name (in headless
* mode or when using .properties file) * mode or when using .properties file)
* @throws IllegalArgumentException if in headless mode, there was a missing or invalid domain * @throws IllegalArgumentException if in headless mode, there was a missing or invalid domain
@ -2824,10 +2818,9 @@ public abstract class GhidraScript extends FlatProgramAPI {
* .properties value (if it exists), or throws an Exception if there is an invalid or * .properties value (if it exists), or throws an Exception if there is an invalid or
* missing .properties value.</li> * missing .properties value.</li>
* </ol> * </ol>
* </p>
* <p> * <p>
* Note that in both headless and GUI modes, you may specify "PI" or "E" and get the * Note that in both headless and GUI modes, you may specify "PI" or "E" and get the
* corresponding floating point value to 15 decimal places.</p> * corresponding floating point value to 15 decimal places.
* <p> * <p>
* *
* @param title the title of the dialog (in GUI mode) or the first part of the variable name * @param title the title of the dialog (in GUI mode) or the first part of the variable name
@ -2887,7 +2880,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
* .properties value (if it exists), or throws an Exception if there is an invalid or * .properties value (if it exists), or throws an Exception if there is an invalid or
* missing .properties value.</li> * missing .properties value.</li>
* </ol> * </ol>
* </p> *
* *
* @param title the title of the dialog (in GUI mode) or the first part of the variable name * @param title the title of the dialog (in GUI mode) or the first part of the variable name
* (in headless mode or when using .properties file) * (in headless mode or when using .properties file)
@ -2930,7 +2923,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
* not null or an empty String, it is returned. In all other cases, an exception * not null or an empty String, it is returned. In all other cases, an exception
* is thrown.</li> * is thrown.</li>
* </ol> * </ol>
* </p> *
* *
* @param title the title of the dialog (in GUI mode) or the first part of the variable name * @param title the title of the dialog (in GUI mode) or the first part of the variable name
* (in headless mode or when using .properties file) * (in headless mode or when using .properties file)
@ -3004,7 +2997,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
* .properties value (if it exists and is a valid choice), or throws an Exception if * .properties value (if it exists and is a valid choice), or throws an Exception if
* there is an invalid or missing .properties value.</li> * there is an invalid or missing .properties value.</li>
* </ol> * </ol>
* </p> *
* @param title the title of the dialog (in GUI mode) or the first part of the variable name * @param title the title of the dialog (in GUI mode) or the first part of the variable name
* (in headless mode or when using .properties file) * (in headless mode or when using .properties file)
* @param message the message to display next to the input field (in GUI mode) or the second * @param message the message to display next to the input field (in GUI mode) or the second
@ -3130,7 +3123,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
* by searching for a property name equal to a space-separated concatenation of the * by searching for a property name equal to a space-separated concatenation of the
* String parameters (title + " " + message). If that property name exists and * String parameters (title + " " + message). If that property name exists and
* represents a list (one or more) of valid choice(s) in the form * represents a list (one or more) of valid choice(s) in the form
* "choice1;choice2;choice3;..." (<-- note the quotes surrounding the choices), then * "choice1;choice2;choice3;..." (&lt;-- note the quotes surrounding the choices), then
* an Object array of those choices is returned. Otherwise, an Exception is thrown if * an Object array of those choices is returned. Otherwise, an Exception is thrown if
* there is an invalid or missing .properties value.</li> * there is an invalid or missing .properties value.</li>
*</ol> *</ol>
@ -3204,7 +3197,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
* by searching for a property name equal to a space-separated concatenation of the * by searching for a property name equal to a space-separated concatenation of the
* String parameters (title + " " + message). If that property name exists and * String parameters (title + " " + message). If that property name exists and
* represents a list (one or more) of valid choice(s) in the form * represents a list (one or more) of valid choice(s) in the form
* "choice1;choice2;choice3;..." (<-- note the quotes surrounding the choices), then * "choice1;choice2;choice3;..." (&lt;-- note the quotes surrounding the choices), then
* an Object array of those choices is returned. Otherwise, an Exception is thrown if * an Object array of those choices is returned. Otherwise, an Exception is thrown if
* there is an invalid or missing .properties value. NOTE: the choice names for * there is an invalid or missing .properties value. NOTE: the choice names for
* this method must match those in the stringRepresentationOfChoices array.</li> * this method must match those in the stringRepresentationOfChoices array.</li>
@ -3296,7 +3289,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
* then that value is returned. Otherwise, an Exception is thrown if there is an * then that value is returned. Otherwise, an Exception is thrown if there is an
* invalid or missing .properties value.</li> * invalid or missing .properties value.</li>
* </ol> * </ol>
* </p> *
* *
* @param title the title of the dialog (in GUI mode) or the first part of the variable name * @param title the title of the dialog (in GUI mode) or the first part of the variable name
* (in headless mode) * (in headless mode)

View file

@ -370,7 +370,7 @@ public class ScriptInfo {
/** /**
* Returns the script menu path as a string. * Returns the script menu path as a string.
* For example, "Path1->Path2->Path3". * For example,{@literal "Path1->Path2->Path3"}.
* @return the script menu path as a string * @return the script menu path as a string
*/ */
public String getMenuPathAsString() { public String getMenuPathAsString() {

View file

@ -93,16 +93,18 @@ public interface BlockModelService {
/** /**
* Get new instance of the active Basic Block model for the current program. * Get new instance of the active Basic Block model for the current program.
* @return new Basic Block model instance or null if program is not open. * @return new Basic Block model instance or null if program is not open.
* @depricated use getActiveBlockModel(Program) instead * @deprecated use getActiveBlockModel(Program) instead
*/ */
@Deprecated
public CodeBlockModel getActiveBlockModel(); public CodeBlockModel getActiveBlockModel();
/** /**
* Get new instance of the active Basic Block model for the current program. * Get new instance of the active Basic Block model for the current program.
* @param includeExternals externals are included if true * @param includeExternals externals are included if true
* @return new Basic Block model instance or null if program is not open. * @return new Basic Block model instance or null if program is not open.
* @depricated use getActiveBlockModel(Program, boolean) instead * @deprecated use getActiveBlockModel(Program, boolean) instead
*/ */
@Deprecated
public CodeBlockModel getActiveBlockModel(boolean includeExternals); public CodeBlockModel getActiveBlockModel(boolean includeExternals);
/** /**
@ -129,16 +131,18 @@ public interface BlockModelService {
/** /**
* Get new instance of the active Subroutine Block model for the current program. * Get new instance of the active Subroutine Block model for the current program.
* @return new Subroutine Block model instance or null if program is not open * @return new Subroutine Block model instance or null if program is not open
* @depricated use getActiveSubroutineModel(Program) instead * @deprecated use getActiveSubroutineModel(Program) instead
*/ */
@Deprecated
public CodeBlockModel getActiveSubroutineModel(); public CodeBlockModel getActiveSubroutineModel();
/** /**
* Get new instance of the active Subroutine Block model for the current program. * Get new instance of the active Subroutine Block model for the current program.
* @param includeExternals externals are included if true * @param includeExternals externals are included if true
* @return new Subroutine Block model instance or null if program is not open * @return new Subroutine Block model instance or null if program is not open
* @depricated use getActiveSubroutineModel(Program) instead * @deprecated use getActiveSubroutineModel(Program) instead
*/ */
@Deprecated
public CodeBlockModel getActiveSubroutineModel(boolean includeExternals); public CodeBlockModel getActiveSubroutineModel(boolean includeExternals);
/** /**
@ -167,8 +171,9 @@ public interface BlockModelService {
* @param modelName name of registered block model * @param modelName name of registered block model
* @return new model instance or null if program is not open. * @return new model instance or null if program is not open.
* @throws NotFoundException if specified model is not registered * @throws NotFoundException if specified model is not registered
* @depricated use getNewModelByName(String, Program) instead * @deprecated use getNewModelByName(String, Program) instead
*/ */
@Deprecated
public CodeBlockModel getNewModelByName(String modelName) public CodeBlockModel getNewModelByName(String modelName)
throws NotFoundException; throws NotFoundException;
@ -178,8 +183,9 @@ public interface BlockModelService {
* @param includeExternals externals are included if true * @param includeExternals externals are included if true
* @return new model instance or null if program is not open. * @return new model instance or null if program is not open.
* @throws NotFoundException if specified model is not registered * @throws NotFoundException if specified model is not registered
* @depricated use getNewModelByName(String, Program, boolean) instead * @deprecated use getNewModelByName(String, Program, boolean) instead
*/ */
@Deprecated
public CodeBlockModel getNewModelByName(String modelName, boolean includeExternals) public CodeBlockModel getNewModelByName(String modelName, boolean includeExternals)
throws NotFoundException; throws NotFoundException;

View file

@ -65,14 +65,14 @@ public interface ClipboardContentProviderService {
/** /**
* Return whether the given context is valid for actions on popup menus. * Return whether the given context is valid for actions on popup menus.
* @param contextObject the context of where the popup menu will be * @param context the context of where the popup menu will be positioned.
* positioned
*/ */
public boolean isValidContext(ActionContext context); public boolean isValidContext(ActionContext context);
// TODO needs updating. Assumed copyAddToPopup became copy(TaskMonitor monitor)
/** /**
* Returns true if copy should be enabled; false if it should be disabled. This method can * Returns true if copy should be enabled; false if it should be disabled. This method can
* be used in conjunction with {@link #copyAddToPopup()} in order to add menu items to * be used in conjunction with {@link #copy(TaskMonitor)} in order to add menu items to
* popup menus but to have them enabled when appropriate. * popup menus but to have them enabled when appropriate.
*/ */
public boolean enableCopy(); public boolean enableCopy();
@ -83,9 +83,10 @@ public interface ClipboardContentProviderService {
*/ */
public boolean enableCopySpecial(); public boolean enableCopySpecial();
// TODO needs updating. Assumed pasteAddToPopup became paste(Transferable pasteData)
/** /**
* Returns true if paste should be enabled; false if it should be disabled. This method can * Returns true if paste should be enabled; false if it should be disabled. This method can
* be used in conjunction with {@link #pasteAddToPopup()} in order to add menu items to * be used in conjunction with {@link #paste(Transferable)} in order to add menu items to
* popup menus but to have them enabled when appropriate. * popup menus but to have them enabled when appropriate.
*/ */
public boolean enablePaste(); public boolean enablePaste();

View file

@ -119,7 +119,6 @@ public interface CodeViewerService {
/** /**
* Set a listing panel on the code viewer. * Set a listing panel on the code viewer.
* @param listingPanel the panel to add. * @param listingPanel the panel to add.
* @param listener the listener to be notified if the new listingPanel is to be removed.
*/ */
public void setListingPanel(ListingPanel listingPanel); public void setListingPanel(ListingPanel listingPanel);

View file

@ -31,7 +31,7 @@ public interface ConsoleService {
* Appends message to the console text area. * Appends message to the console text area.
* *
* For example: * For example:
* "originator> message" * "originator&gt; message"
* *
* @param originator a descriptive name of the message creator * @param originator a descriptive name of the message creator
* @param message the message to appear in the console * @param message the message to appear in the console
@ -108,7 +108,7 @@ public interface ConsoleService {
* implementation. If this method cannot be supported, * implementation. If this method cannot be supported,
* please throw {@link UnsupportedOperationException}. * please throw {@link UnsupportedOperationException}.
* *
* @return number of characters >= 0 * @return number of characters &gt;= 0
* *
* @throws UnsupportedOperationException * @throws UnsupportedOperationException
*/ */
@ -124,10 +124,10 @@ public interface ConsoleService {
* implementation. If this method cannot be supported, * implementation. If this method cannot be supported,
* please throw {@link UnsupportedOperationException}. * please throw {@link UnsupportedOperationException}.
* *
* @param offset the offset into the console representing the desired start of the text >= 0 * @param offset the offset into the console representing the desired start of the text &gt;= 0
* @param length the length of the desired string >= 0 * @param length the length of the desired string &gt;= 0
* *
* @return the text, in a String of length >= 0 * @return the text, in a String of length &gt;= 0
* *
* @throws UnsupportedOperationException * @throws UnsupportedOperationException
*/ */

View file

@ -34,7 +34,7 @@ public interface DataService {
* location is contained within the current program selection, the entire * location is contained within the current program selection, the entire
* selection is examined. * selection is examined.
* *
* @param programActionContext contains program, location, and selection information * @param context the context containing program, location, and selection information
* @return true if create data is allowed, else false. * @return true if create data is allowed, else false.
*/ */
public boolean isCreateDataAllowed(ListingActionContext context); public boolean isCreateDataAllowed(ListingActionContext context);
@ -44,8 +44,8 @@ public interface DataService {
* *
* @param dt * @param dt
* dataType to create at the location * dataType to create at the location
* @param location * @param context
* program location to create the data type * the context containing program, location, and selection information
* @param enableConflictHandling * @param enableConflictHandling
* if true, the service may prompt the user to resolve data conflicts * if true, the service may prompt the user to resolve data conflicts
* @return true if the data could be created at the current location * @return true if the data could be created at the current location

View file

@ -53,7 +53,6 @@ public interface HoverService {
* @param programLocation the program location where the mouse is hovering. * @param programLocation the program location where the mouse is hovering.
* @param fieldLocation the precise mouse location within the field viewer * @param fieldLocation the precise mouse location within the field viewer
* @param field the field over which the mouse is hovering * @param field the field over which the mouse is hovering
* @param event the last mouse motion event over the field viewer component (i.e., FieldPanel).
* @return The component to be shown for the given location information. * @return The component to be shown for the given location information.
*/ */
public JComponent getHoverComponent(Program program, ProgramLocation programLocation, public JComponent getHoverComponent(Program program, ProgramLocation programLocation,

View file

@ -104,8 +104,8 @@ public interface MarkerService {
/** /**
* A group name for highlights. This is intended to be used with * A group name for highlights. This is intended to be used with
* {@link #setMarkerForGroup(String, MarkerSet)} and * {@link #setMarkerForGroup(String, MarkerSet, Program)} and
* {@link #removeMarkerForGroup(String, MarkerSet)} * {@link #removeMarkerForGroup(String, MarkerSet, Program)}
*/ */
public final static String HIGHLIGHT_GROUP = "HIGHLIGHT_GROUP"; public final static String HIGHLIGHT_GROUP = "HIGHLIGHT_GROUP";
@ -233,7 +233,6 @@ public interface MarkerService {
* *
* @deprecated use {@link #removeMarker(MarkerSet,Program)} * @deprecated use {@link #removeMarker(MarkerSet,Program)}
* @param markerManager marker manager to be removed from navigation bars. * @param markerManager marker manager to be removed from navigation bars.
* @param program The program with which the markers are associated.
*/ */
@Deprecated @Deprecated
public void removeMarker(MarkerSet markerManager); public void removeMarker(MarkerSet markerManager);
@ -241,7 +240,7 @@ public interface MarkerService {
/** /**
* Return the markerset with the given name; * Return the markerset with the given name;
* *
* @param The name of the marker set for which to search * @param name The name of the marker set for which to search
* @param program The program with which the created markers will be associated. * @param program The program with which the created markers will be associated.
* @return the markerset with the given name; * @return the markerset with the given name;
*/ */
@ -252,8 +251,7 @@ public interface MarkerService {
* see the <a href="#usage">recommended usage</a> for more information. * see the <a href="#usage">recommended usage</a> for more information.
* *
* @deprecated use {@link #getMarkerSet(String, Program)} * @deprecated use {@link #getMarkerSet(String, Program)}
* @param The name of the marker set for which to search * @param name The name of the marker set for which to search
* @param program The program with which the created markers will be associated.
* @return the markerset with the given name; * @return the markerset with the given name;
*/ */
@Deprecated @Deprecated
@ -266,7 +264,7 @@ public interface MarkerService {
* @param groupName The name to associate the marker set with. * @param groupName The name to associate the marker set with.
* @param markerSet The marker set to add to this service * @param markerSet The marker set to add to this service
* @param program The program with which the markers are associated. * @param program The program with which the markers are associated.
* @see #removeMarkerForGroup(String, MarkerSet) * @see #removeMarkerForGroup(String, MarkerSet, Program)
*/ */
public void setMarkerForGroup(String groupName, MarkerSet markerSet, Program program); public void setMarkerForGroup(String groupName, MarkerSet markerSet, Program program);
@ -277,7 +275,7 @@ public interface MarkerService {
* @param markerSet The marker set to add to this service * @param markerSet The marker set to add to this service
* @param program The program with which the markers are associated. May be null if the * @param program The program with which the markers are associated. May be null if the
* marker is * marker is
* @see #setMarkerForGroup(String, MarkerSet) * @see #setMarkerForGroup(String, MarkerSet, Program)
*/ */
public void removeMarkerForGroup(String groupName, MarkerSet markerSet, Program program); public void removeMarkerForGroup(String groupName, MarkerSet markerSet, Program program);

View file

@ -44,9 +44,8 @@ public class EditFieldNameDialog extends DialogComponentProvider {
/** /**
* Construct a new dialog. * Construct a new dialog.
* *
* @param Frame parent for the dialog, null value is acceptable if no parent * @param title title for the dialog, null value is acceptable if no title
* @param model object that controls the enablement and settings for * @param tool the plugin tool
* labels and does the work of adding or editing labels
*/ */
public EditFieldNameDialog(String title, PluginTool tool) { public EditFieldNameDialog(String title, PluginTool tool) {
super(title, true, true, true, false); super(title, true, true, true, false);

View file

@ -77,7 +77,6 @@ public class MemoryBlockUtils {
* @param isOverlay if true, the block will be created in a new overlay space for that block * @param isOverlay if true, the block will be created in a new overlay space for that block
* @param name the name of the new block. * @param name the name of the new block.
* @param start the starting address of the new block. * @param start the starting address of the new block.
* @param is source of the data used to fill the block or null for zero initialization.
* @param length the length of the new block * @param length the length of the new block
* @param comment the comment text to associate with the new block. * @param comment the comment text to associate with the new block.
* @param source the source of the block (This field is not well defined - currently another comment) * @param source the source of the block (This field is not well defined - currently another comment)

View file

@ -66,10 +66,7 @@ public class ToolTipUtils {
/** /**
* Return dataType details as HTML. * Return dataType details as HTML.
* @param dataType * @param dataType the dataType to be represented
* @param htmlFragmentOnly if true only a fragment of HTML, suitable for combining
* with other fragments will be Returned. If false, the fragment will be enclosed
* within an HTML tag element.
* @return dataType details formatted as HTML * @return dataType details formatted as HTML
*/ */
public static HTMLDataTypeRepresentation getHTMLRepresentation(DataType dataType) { public static HTMLDataTypeRepresentation getHTMLRepresentation(DataType dataType) {

View file

@ -29,7 +29,8 @@ public interface SelectLanguagePanelListener {
/** /**
* This method is invoked every time a languauge is selected. * This method is invoked every time a languauge is selected.
* NOTE: the language could be null. * NOTE: the language could be null.
* @param language the selected language. * @param langID the selected language id.
* @param compilerSpecID the selected compiler spec id.
*/ */
public void selectIDValidation(LanguageID langID, CompilerSpecID compilerSpecID); public void selectIDValidation(LanguageID langID, CompilerSpecID compilerSpecID);
} }

View file

@ -92,10 +92,9 @@ public class SetEquateDialog extends DialogComponentProvider {
/** /**
* Constructor * Constructor
* *
* @param parent the parent frame to host the dialog. * @param tool the EquatePlugin that launched this dialog(used to validate input)
* @param plugin the EquatePlugin that launched this dialog(used to validate input) * @param program the program the equate is located in.
* @param labelText a text string indicating the numeric value being equated. * @param value the equate value to set.
* @param equates a list of equates that already exist for this numeric value.
*/ */
public SetEquateDialog(PluginTool tool, Program program, Scalar value) { public SetEquateDialog(PluginTool tool, Program program, Scalar value) {

View file

@ -69,7 +69,6 @@ public interface ByteProvider extends Closeable {
* Returns true if the specified index is valid. * Returns true if the specified index is valid.
* @param index the index in the byte provider * @param index the index in the byte provider
* @return returns true if the specified index is valid * @return returns true if the specified index is valid
* @exception IOException if an I/O error occurs
*/ */
public boolean isValidIndex(long index); public boolean isValidIndex(long index);

View file

@ -57,7 +57,7 @@ public class GhidraRandomAccessFile {
* but adds buffering to limit the amount. * but adds buffering to limit the amount.
* <p> * <p>
* *
* <a name="mode"><p> The <tt>mode</tt> argument specifies the access mode * <a name="mode"></a><p> The <tt>mode</tt> argument specifies the access mode
* in which the file is to be opened. The permitted values and their * in which the file is to be opened. The permitted values and their
* meanings are: * meanings are:
* *
@ -198,13 +198,13 @@ public class GhidraRandomAccessFile {
} }
/** /**
* Reads up to <code>len</code> bytes of data from this file into an * Reads up to <code>length</code> bytes of data from this file into an
* array of bytes. This method blocks until at least one byte of input * array of bytes. This method blocks until at least one byte of input
* is available. * is available.
* *
* @param b the buffer into which the data is read. * @param b the buffer into which the data is read.
* @param off the start offset of the data. * @param offset the start offset of the data.
* @param len the maximum number of bytes read. * @param length the maximum number of bytes read.
* @return the total number of bytes read into the buffer, or * @return the total number of bytes read into the buffer, or
* <code>-1</code> if there is no more data because the end of * <code>-1</code> if there is no more data because the end of
* the file has been reached. * the file has been reached.

View file

@ -60,7 +60,7 @@ public class RandomAccessByteProvider implements ByteProvider {
/** /**
* Constructs a byte provider using the specified file and permissions string * Constructs a byte provider using the specified file and permissions string
* @param file the file to open for random access * @param file the file to open for random access
* @param string indicating permissions used for open * @param permissions indicating permissions used for open
* @throws FileNotFoundException if the file does not exist * @throws FileNotFoundException if the file does not exist
*/ */
public RandomAccessByteProvider(File file, String permissions) throws IOException { public RandomAccessByteProvider(File file, String permissions) throws IOException {

View file

@ -35,25 +35,19 @@ public class RandomAccessMutableByteProvider extends RandomAccessByteProvider im
/** /**
* Constructs a byte provider using the specified file and permissions string * Constructs a byte provider using the specified file and permissions string
* @param file the file to open for random access * @param file the file to open for random access
* @param string indicating permissions used for open * @param permissions indicating permissions used for open
* @throws FileNotFoundException if the file does not exist * @throws FileNotFoundException if the file does not exist
*/ */
public RandomAccessMutableByteProvider(File file, String permissions) throws IOException { public RandomAccessMutableByteProvider(File file, String permissions) throws IOException {
super(file, permissions); super(file, permissions);
} }
/**
* @see ghidra.app.util.bin.ByteProvider#writeByte(long, byte)
*/
@Override @Override
public void writeByte(long index, byte value) throws IOException { public void writeByte(long index, byte value) throws IOException {
randomAccessFile.seek(index); randomAccessFile.seek(index);
randomAccessFile.write(value); randomAccessFile.write(value);
} }
/**
* @see ghidra.app.util.bin.ByteProvider#writeBytes(long, byte[])
*/
@Override @Override
public void writeBytes(long index, byte[] values) throws IOException { public void writeBytes(long index, byte[] values) throws IOException {
randomAccessFile.seek(index); randomAccessFile.seek(index);

View file

@ -145,7 +145,7 @@ public class CoffSectionHeader implements StructConverter {
/** /**
* Returns true if this section is byte oriented and aligned and should assume * Returns true if this section is byte oriented and aligned and should assume
* an addressable unit size of 1. * an addressable unit size of 1.
* @returns true if byte aligned, false if word aligned * @return true if byte aligned, false if word aligned
*/ */
public boolean isExplicitlyByteAligned() { public boolean isExplicitlyByteAligned() {
return (s_reserved & CoffSectionHeaderReserved.EXPLICITLY_BYTE_ALIGNED) != 0; return (s_reserved & CoffSectionHeaderReserved.EXPLICITLY_BYTE_ALIGNED) != 0;

View file

@ -113,7 +113,7 @@ public class DIEAggregate {
* which is skipped. * which is skipped.
* <p> * <p>
* Used when a DIEA is composed of a head DIE with a different TAG type than the rest of * Used when a DIEA is composed of a head DIE with a different TAG type than the rest of
* the DIEs. (ie. a dw_tag_call_site -> dw_tag_sub DIEA) * the DIEs. (ie. a dw_tag_call_site -&gt; dw_tag_sub DIEA)
* *
* @param source * @param source
* @return * @return
@ -794,11 +794,7 @@ public class DIEAggregate {
* Parses a range list from the debug_ranges section. * Parses a range list from the debug_ranges section.
* See DWARF4 Section 2.17.3 (Non-Contiguous Address Ranges). * See DWARF4 Section 2.17.3 (Non-Contiguous Address Ranges).
* <p> * <p>
* This method is similar to {@link DWARFLocation#parseLocationList(long, DebugInfoEntry)}
* and may have the same gotchas that need to be ported over.
* <p>
* @param attribute attribute ie. {@link DWARFAttribute#DW_AT_ranges} * @param attribute attribute ie. {@link DWARFAttribute#DW_AT_ranges}
* @param debug_ranges debug_ranges section byte provider
* @return list of ranges * @return list of ranges
* @throws IOException if an I/O error occurs * @throws IOException if an I/O error occurs
*/ */

View file

@ -111,15 +111,15 @@ public class DWARFCompilationUnit {
* leaves the input stream at the next compilation unit to read), otherwise throws * leaves the input stream at the next compilation unit to read), otherwise throws
* an IOException if there was an unrecoverable error. * an IOException if there was an unrecoverable error.
* *
* @param debugInfoBR * @param dwarfProgram the dwarf program.
* @param debugAbbrBR * @param debugInfoBR the debug info binary reader.
* @param cuNumber * @param debugAbbrBR the debug abbreviation binary reader
* @param helper * @param cuNumber the compilation unit number
* @param monitor * @param monitor the current task monitor
* @return * @return the read compilation unit.
* @throws DWARFException * @throws DWARFException if an invalid or unsupported DWARF version is read.
* @throws IOException * @throws IOException if the length of the compilation unit is invalid.
* @throws CancelledException * @throws CancelledException if the task has been canceled.
*/ */
public static DWARFCompilationUnit readCompilationUnit(DWARFProgram dwarfProgram, public static DWARFCompilationUnit readCompilationUnit(DWARFProgram dwarfProgram,
BinaryReader debugInfoBR, BinaryReader debugAbbrBR, int cuNumber, TaskMonitor monitor) BinaryReader debugInfoBR, BinaryReader debugAbbrBR, int cuNumber, TaskMonitor monitor)
@ -198,18 +198,6 @@ public class DWARFCompilationUnit {
/** /**
* This ctor is public only for junit tests. Do not use directly. * This ctor is public only for junit tests. Do not use directly.
*
* @param dwarfProgram
* @param startOffset
* @param endOffset
* @param length
* @param format
* @param version
* @param abbreviationOffset
* @param pointerSize
* @param compUnitNumber
* @param firstDIEOffset
* @param codeToAbbreviationMap
*/ */
public DWARFCompilationUnit(DWARFProgram dwarfProgram, long startOffset, long endOffset, public DWARFCompilationUnit(DWARFProgram dwarfProgram, long startOffset, long endOffset,
long length, int format, short version, long abbreviationOffset, byte pointerSize, long length, int format, short version, long abbreviationOffset, byte pointerSize,

View file

@ -171,7 +171,7 @@ public class DWARFUtil {
* A lightweight attempt to get nesting (ie. namespaces and such) information * A lightweight attempt to get nesting (ie. namespaces and such) information
* from gnu mangled name strings. * from gnu mangled name strings.
* <p> * <p>
* For example, "_ZN19class1_inline_funcs3fooEv" -> * For example, "_ZN19class1_inline_funcs3fooEv" -&gt;
* [19 chars]'class1_inline_funcs', [3 chars]'foo' * [19 chars]'class1_inline_funcs', [3 chars]'foo'
* <p> * <p>
* @param s * @param s
@ -257,8 +257,8 @@ public class DWARFUtil {
/** /**
* Creates a name for anon types based on their position in their parent's childList. * Creates a name for anon types based on their position in their parent's childList.
* <p> * <p>
* @param die * @param diea the die aggregate.
* @return * @return the anonymous name of the die aggregate.
*/ */
public static String getAnonNameForMeFromParentContext(DIEAggregate diea) { public static String getAnonNameForMeFromParentContext(DIEAggregate diea) {
DebugInfoEntry parent = diea.getHeadFragment().getParent(); DebugInfoEntry parent = diea.getHeadFragment().getParent();
@ -286,9 +286,9 @@ public class DWARFUtil {
* <p> * <p>
* Example: "anon_struct_for_field1_field2" * Example: "anon_struct_for_field1_field2"
* <p> * <p>
* Falls back to {@link #getAnonNameForMeFromParentContext(DebugInfoEntry)} if no siblings found. * Falls back to {@link #getAnonNameForMeFromParentContext(DIEAggregate)} if no siblings found.
* @param die * @param diea the die aggregate.
* @return * @return the anonymous name of the die aggregate.
*/ */
public static String getAnonNameForMeFromParentContext2(DIEAggregate diea) { public static String getAnonNameForMeFromParentContext2(DIEAggregate diea) {
DebugInfoEntry parent = diea.getHeadFragment().getParent(); DebugInfoEntry parent = diea.getHeadFragment().getParent();

View file

@ -70,7 +70,7 @@ public class DWARFDataTypeImporter {
* This identity mapping doesn't always work because datatype instances are often clone()'d * This identity mapping doesn't always work because datatype instances are often clone()'d
* which will break this mapping. * which will break this mapping.
* <p> * <p>
* Places where we know clone()ing happens the mapping is * Places where we know cloning happens the mapping is
* {@link #updateMapping(DataType, DataType) updated}. * {@link #updateMapping(DataType, DataType) updated}.
*/ */
private IdentityHashMap<DataType, DWARFDataType> dataTypeInstanceToDDTMap = private IdentityHashMap<DataType, DWARFDataType> dataTypeInstanceToDDTMap =
@ -371,7 +371,7 @@ public class DWARFDataTypeImporter {
* If an existing Enum with the same name is found in the DTM, and it doesn't have * If an existing Enum with the same name is found in the DTM, and it doesn't have
* any conflicting enum values, merge this enum into the existing enum. * any conflicting enum values, merge this enum into the existing enum.
* <p> * <p>
* This method takes liberties with the normal DWARF->Ghidra Impl DataType->Ghidra DB DataType * This method takes liberties with the normal{@literal DWARF->Ghidra Impl DataType->Ghidra DB DataType}
* workflow to be able to merge values into previous db enum datatypes. * workflow to be able to merge values into previous db enum datatypes.
* <p> * <p>
* *
@ -1101,14 +1101,13 @@ public class DWARFDataTypeImporter {
* <p> * <p>
* There is some hacky logic here to handle situations where a pointer refers back to * There is some hacky logic here to handle situations where a pointer refers back to
* itself via a struct: * itself via a struct:
* <pre> * <pre>{@literal
* PTRa
* +-> STRUCT1 (creates empty struct) * +-> STRUCT1 (creates empty struct)
* +-> Field1: PTRa * +-> Field1: PTRa
* +-> STRUCT1 (empty struct returned from cache) * +-> STRUCT1 (empty struct returned from cache)
* ( ptr instance created pointing to empty struct) * ( ptr instance created pointing to empty struct)
* ( struct fields populated ) * ( struct fields populated )
* </pre> * }</pre>
* The struct creation code will stop the recursive loop after the second time * The struct creation code will stop the recursive loop after the second time
* makeDataTypeForPointer() is hit because there will be an empty struct in the cache. * makeDataTypeForPointer() is hit because there will be an empty struct in the cache.
* *

View file

@ -127,7 +127,7 @@ public class DWARFDataTypeManager {
* <p> * <p>
* A {@link DataTypeGraphComparator} is used to walk the 'impl' DataType object graph * A {@link DataTypeGraphComparator} is used to walk the 'impl' DataType object graph
* in lock-step with the resultant 'db' DataType object graph, and the mapping between * in lock-step with the resultant 'db' DataType object graph, and the mapping between
* the 'impl' object and its creator DIEA (held in {@link #currentImplDataTypeToDIE}) * the 'impl' object and its creator DIEA (held in {@link DWARFDataType})
* is used to create a mapping to the resultant 'db' DataType's path. * is used to create a mapping to the resultant 'db' DataType's path.
* *
* @param diea DWARF {@link DIEAggregate} with datatype information that needs to be converted * @param diea DWARF {@link DIEAggregate} with datatype information that needs to be converted
@ -225,14 +225,12 @@ public class DWARFDataTypeManager {
/** /**
* Returns a Ghidra {@link DataType} corresponding to the specified {@link DIEAggregate}, * Returns a Ghidra {@link DataType} corresponding to the specified {@link DIEAggregate},
* or the specified defaultValue if the DIEA param is null or does not map to an already * or the specified defaultValue if the DIEA param is null or does not map to an already
* defined datatype (registered with {@link #addType(long, DataType, DWARFImportSummary)}). * defined datatype (registered with {@link #addDataType(long, DataType, DWARFSourceInfo)}).
* <p> * <p>
* @param diea {@link DIEAggregate} that defines a data type * @param diea {@link DIEAggregate} that defines a data type
* @param defaultValue Ghidra {@link DataType} to return if the specified DIEA is null * @param defaultValue Ghidra {@link DataType} to return if the specified DIEA is null
* or not already defined. * or not already defined.
* @return Ghidra {@link DataType} * @return Ghidra {@link DataType}
* @throws DWARFExpressionException
* @throws IOException
*/ */
public DataType getDataType(DIEAggregate diea, DataType defaultValue) { public DataType getDataType(DIEAggregate diea, DataType defaultValue) {
if (diea == null) { if (diea == null) {
@ -259,7 +257,7 @@ public class DWARFDataTypeManager {
/** /**
* Returns a Ghidra {@link DataType} corresponding to the specified DIE (based on its * Returns a Ghidra {@link DataType} corresponding to the specified DIE (based on its
* offset), or the specified defaultValue if the DIE does not map to a defined * offset), or the specified defaultValue if the DIE does not map to a defined
* datatype (registered with {@link #addType(long, DataType, DWARFImportSummary)}). * datatype (registered with {@link #addDataType(long, DataType, DWARFSourceInfo)}).
* <p> * <p>
* *
* @param dieOffset offset of a DIE record that defines a data type * @param dieOffset offset of a DIE record that defines a data type
@ -599,7 +597,7 @@ public class DWARFDataTypeManager {
* Does the actual import work. Updates the {@link #importSummary summary} object * Does the actual import work. Updates the {@link #importSummary summary} object
* with information about the types imported and errors encountered. * with information about the types imported and errors encountered.
* *
* @param TaskMonitor monitor to watch for cancel * @param monitor to watch for cancel
* @throws IOException if errors are encountered reading data * @throws IOException if errors are encountered reading data
* @throws DWARFException if errors are encountered processing * @throws DWARFException if errors are encountered processing
* @throws CancelledException if the {@link TaskMonitor} is canceled by the user. * @throws CancelledException if the {@link TaskMonitor} is canceled by the user.
@ -756,7 +754,7 @@ public class DWARFDataTypeManager {
* but the impls can't be shared without excessive over-engineering. * but the impls can't be shared without excessive over-engineering.
* <p> * <p>
* This impl uses DataType's that have already been resolved and committed to the DTM, and * This impl uses DataType's that have already been resolved and committed to the DTM, and
* a cache mapping entry of the DWARF die -> DataType has been registered via {@link #addDataType(long, DataType, DWARFSourceInfo)}. * a cache mapping entry of the DWARF die -&gt; DataType has been registered via {@link #addDataType(long, DataType, DWARFSourceInfo)}.
* <p> * <p>
* This approach is necessary because of speed issues that arise if the referred datatypes * This approach is necessary because of speed issues that arise if the referred datatypes
* are created from scratch from the DWARF information and then have to go through a * are created from scratch from the DWARF information and then have to go through a

View file

@ -175,7 +175,7 @@ public class DWARFParser {
/** /**
* Imports DWARF information according to the {@link DWARFImportOptions} set. * Imports DWARF information according to the {@link DWARFImportOptions} set.
* <p> * <p>
* {@link #checkPreconditions()} must be called before this. * {@link DWARFProgram#checkPreconditions(TaskMonitor)} must be called before this.
* <p> * <p>
* @return * @return
* @throws IOException * @throws IOException

View file

@ -657,7 +657,8 @@ public class DWARFProgram implements Closeable {
/** /**
* Returns the count of the DIE records in this compilation unit. * Returns the count of the DIE records in this compilation unit.
* <p> * <p>
* Only valid if called after {@link #readDIEs()} and before {@link #clearEntries()}. * Only valid if called after {@link #checkPreconditions(TaskMonitor)}
* and before {@link #clearDIEIndexes()}.
* @return number of DIE records in the compunit. * @return number of DIE records in the compunit.
* @throws IOException * @throws IOException
* @throws CancelledException * @throws CancelledException
@ -667,7 +668,8 @@ public class DWARFProgram implements Closeable {
} }
/** /**
* Releases the memory used by the DIE entries read by {@link #readDIEs()}. * Releases the memory used by the DIE entries read when invoking
* {@link #checkPreconditions(TaskMonitor)}.
*/ */
public void clearDIEIndexes() { public void clearDIEIndexes() {
offsetMap.clear(); offsetMap.clear();

View file

@ -62,9 +62,9 @@ public interface ElfConstants {
/**Invalid class*/ /**Invalid class*/
public static final byte ELF_CLASS_NONE = 0; public static final byte ELF_CLASS_NONE = 0;
/**32-bit objects*/ /**{@code 32-bit objects}*/
public static final byte ELF_CLASS_32 = 1; public static final byte ELF_CLASS_32 = 1;
/**64-bit objects*/ /**{@code 64-bit objects}*/
public static final byte ELF_CLASS_64 = 2; public static final byte ELF_CLASS_64 = 2;
/**?*/ /**?*/
public static final byte ELF_CLASS_NUM = 3; public static final byte ELF_CLASS_NUM = 3;
@ -107,7 +107,7 @@ public interface ElfConstants {
public static final byte ELFOSABI_IRIX = 8; public static final byte ELFOSABI_IRIX = 8;
/**free bsd*/ /**free bsd*/
public static final byte ELFOSABI_FREEBSD = 9; public static final byte ELFOSABI_FREEBSD = 9;
/**compaq tru64 unix*/ /**{@code compaq tru64 unix}*/
public static final byte ELFOSABI_TRUE64 = 10; public static final byte ELFOSABI_TRUE64 = 10;
/**novell modesto*/ /**novell modesto*/
public static final byte ELFOSABI_MODESTO = 11; public static final byte ELFOSABI_MODESTO = 11;
@ -121,9 +121,9 @@ public interface ElfConstants {
public static final byte ELFOSABI_AROS = 15; public static final byte ELFOSABI_AROS = 15;
/** FenixOS */ /** FenixOS */
public static final byte ELFOSABI_FENIXOS = 16; public static final byte ELFOSABI_FENIXOS = 16;
/** Bare-metal TMS320C6000 */ /**{@code Bare-metal TMS320C6000}*/
public static final byte ELFOSABI_C6000_ELFABI = 64; public static final byte ELFOSABI_C6000_ELFABI = 64;
/** Linux TMS320C6000 */ /**{@code Linux TMS320C6000}*/
public static final byte ELFOSABI_C6000_LINUX = 65; public static final byte ELFOSABI_C6000_LINUX = 65;
/** ARM */ /** ARM */
public static final byte ELFOSABI_ARM = 97; public static final byte ELFOSABI_ARM = 97;
@ -157,47 +157,47 @@ public interface ElfConstants {
/**No machine*/ /**No machine*/
public static final short EM_NONE = 0; public static final short EM_NONE = 0;
/**AT&T WE 32100*/ /**{@code AT&T WE 32100}*/
public static final short EM_M32 = 1; public static final short EM_M32 = 1;
/**SUN SPARC */ /**SUN SPARC */
public static final short EM_SPARC = 2; public static final short EM_SPARC = 2;
/**Intel 80386 */ /**{@code Intel 80386}*/
public static final short EM_386 = 3; public static final short EM_386 = 3;
/**Motorola m68k family */ /**{@code Motorola m68k family}*/
public static final short EM_68K = 4; public static final short EM_68K = 4;
/**Motorola m88k family */ /**{@code Motorola m88k family}*/
public static final short EM_88K = 5; public static final short EM_88K = 5;
/**Intel 486 (deprecated)*/ /**{@code Intel 486 (deprecated)}*/
public static final short EM_486 = 6; public static final short EM_486 = 6;
/**Intel 80860 */ /**{@code Intel 80860}*/
public static final short EM_860 = 7; public static final short EM_860 = 7;
/**MIPS R3000 big-endian */ /**{@code MIPS R3000 big-endian}*/
public static final short EM_MIPS = 8; public static final short EM_MIPS = 8;
/**IBM System/370 */ /**{@code IBM System/370}*/
public static final short EM_S370 = 9; public static final short EM_S370 = 9;
/**MIPS R3000 little-endian */ /**{@code MIPS R3000 little-endian}*/
public static final short EM_MIPS_RS3_LE = 10; public static final short EM_MIPS_RS3_LE = 10;
// 11 - 14 reserved // 11 - 14 reserved
/**HPPA */ /**HPPA */
public static final short EM_PARISC = 15; public static final short EM_PARISC = 15;
/**Fujitsu VPP500 */ /**{@code Fujitsu VPP500}*/
public static final short EM_VPP500 = 17; public static final short EM_VPP500 = 17;
/**Sun's "v8plus" */ /**{@code Sun's "v8plus"}*/
public static final short EM_SPARC32PLUS = 18; public static final short EM_SPARC32PLUS = 18;
/**Intel 80960 */ /**{@code Intel 80960}*/
public static final short EM_960 = 19; public static final short EM_960 = 19;
/**PowerPC */ /**PowerPC */
public static final short EM_PPC = 20; public static final short EM_PPC = 20;
/**PowerPC 64-bit */ /**{@code PowerPC 64-bit}*/
public static final short EM_PPC64 = 21; public static final short EM_PPC64 = 21;
/**IBM S390 */ /**{@code IBM S390}*/
public static final short EM_S390 = 22; public static final short EM_S390 = 22;
//23 - 35 reserved //23 - 35 reserved
/**NEC V800 series */ /**{@code NEC V800 series}*/
public static final short EM_V800 = 36; public static final short EM_V800 = 36;
/**Fujitsu FR20 */ /**{@code Fujitsu FR20}*/
public static final short EM_FR20 = 37; public static final short EM_FR20 = 37;
/**TRW RH-32 */ /**{@code TRW RH-32}*/
public static final short EM_RH32 = 38; public static final short EM_RH32 = 38;
/**Motorola RCE */ /**Motorola RCE */
public static final short EM_RCE = 39; public static final short EM_RCE = 39;
@ -207,19 +207,19 @@ public interface ElfConstants {
public static final short EM_FAKE_ALPHA = 41; public static final short EM_FAKE_ALPHA = 41;
/**Hitachi SH */ /**Hitachi SH */
public static final short EM_SH = 42; public static final short EM_SH = 42;
/**SPARC v9 64-bit */ /**{@code SPARC v9 64-bit}*/
public static final short EM_SPARCV9 = 43; public static final short EM_SPARCV9 = 43;
/**Siemens Tricore */ /**Siemens Tricore */
public static final short EM_TRICORE = 44; public static final short EM_TRICORE = 44;
/**Argonaut RISC Core */ /**Argonaut RISC Core */
public static final short EM_ARC = 45; public static final short EM_ARC = 45;
/**Hitachi H8/300 */ /**{@code Hitachi H8/300}*/
public static final short EM_H8_300 = 46; public static final short EM_H8_300 = 46;
/**Hitachi H8/300H */ /**{@code Hitachi H8/300H}*/
public static final short EM_H8_300H = 47; public static final short EM_H8_300H = 47;
/**Hitachi H8S */ /**{@code Hitachi H8S}*/
public static final short EM_H8S = 48; public static final short EM_H8S = 48;
/**Hitachi H8/500 */ /**{@code Hitachi H8/500}*/
public static final short EM_H8_500 = 49; public static final short EM_H8_500 = 49;
/** Intel Merced */ /** Intel Merced */
public static final short EM_IA_64 = 50; public static final short EM_IA_64 = 50;
@ -227,7 +227,7 @@ public interface ElfConstants {
public static final short EM_MIPS_X = 51; public static final short EM_MIPS_X = 51;
/** Motorola Coldfire */ /** Motorola Coldfire */
public static final short EM_COLDFIRE = 52; public static final short EM_COLDFIRE = 52;
/** Motorola M68HC12 */ /**{@code Motorola M68HC12}*/
public static final short EM_68HC12 = 53; public static final short EM_68HC12 = 53;
/** Fujitsu MMA Multimedia Accelerator*/ /** Fujitsu MMA Multimedia Accelerator*/
public static final short EM_MMA = 54; public static final short EM_MMA = 54;
@ -235,77 +235,77 @@ public interface ElfConstants {
public static final short EM_PCP = 55; public static final short EM_PCP = 55;
/** Sony nCPU embedded RISC */ /** Sony nCPU embedded RISC */
public static final short EM_NCPU = 56; public static final short EM_NCPU = 56;
/** Denso NDR1 microprocessor */ /**{@code Denso NDR1 microprocessor}*/
public static final short EM_NDR1 = 57; public static final short EM_NDR1 = 57;
/** Motorola Start*Core processor */ /** Motorola Start*Core processor */
public static final short EM_STARCORE = 58; public static final short EM_STARCORE = 58;
/** Toyota ME16 processor */ /**{@code Toyota ME16 processor}*/
public static final short EM_ME16 = 59; public static final short EM_ME16 = 59;
/** STMicroelectronic ST100 processor */ /**{@code STMicroelectronic ST100 processor}*/
public static final short EM_ST100 = 60; public static final short EM_ST100 = 60;
/** Advanced Logic Corp. Tinyj emb.fam*/ /** Advanced Logic Corp. Tinyj emb.fam*/
public static final short EM_TINYJ = 61; public static final short EM_TINYJ = 61;
/** AMD x86-64 architecture */ /**{@code AMD x86-64 architecture}*/
public static final short EM_X86_64 = 62; public static final short EM_X86_64 = 62;
/** Sony DSP Processor */ /** Sony DSP Processor */
public static final short EM_PDSP = 63; public static final short EM_PDSP = 63;
// 64 reserved // 64 reserved
// 65 reserved // 65 reserved
/** Siemens FX66 microcontroller */ /**{@code Siemens FX66 microcontroller}*/
public static final short EM_FX66 = 66; public static final short EM_FX66 = 66;
/** STMicroelectronics ST9+ 8/16 mc */ /**{@code STMicroelectronics ST9+ 8/16 mc}*/
public static final short EM_ST9PLUS = 67; public static final short EM_ST9PLUS = 67;
/** STmicroelectronics ST7 8 bit mc */ /**{@code STmicroelectronics ST7 8 bit mc}*/
public static final short EM_ST7 = 68; public static final short EM_ST7 = 68;
/** Motorola MC68HC16 microcontroller */ /**{@code Motorola MC68HC16 microcontroller}*/
public static final short EM_68HC16 = 69; public static final short EM_68HC16 = 69;
/** Motorola MC68HC11 microcontroller */ /**{@code Motorola MC68HC11 microcontroller}*/
public static final short EM_68HC11 = 70; public static final short EM_68HC11 = 70;
/** Motorola MC68HC08 microcontroller */ /**{@code Motorola MC68HC08 microcontroller}*/
public static final short EM_68HC08 = 71; public static final short EM_68HC08 = 71;
/** Motorola MC68HC05 microcontroller */ /**{@code Motorola MC68HC05 microcontroller}*/
public static final short EM_68HC05 = 72; public static final short EM_68HC05 = 72;
/** Silicon Graphics SVx */ /** Silicon Graphics SVx */
public static final short EM_SVX = 73; public static final short EM_SVX = 73;
/** STMicroelectronics ST19 8 bit mc */ /**{@code STMicroelectronics ST19 8 bit mc}*/
public static final short EM_ST19 = 74; public static final short EM_ST19 = 74;
/** Digital VAX */ /** Digital VAX */
public static final short EM_VAX = 75; public static final short EM_VAX = 75;
/** Axis Communications 32-bit embedded processor */ /**{@code Axis Communications 32-bit embedded processor}*/
public static final short EM_CRIS = 76; public static final short EM_CRIS = 76;
/** Infineon Technologies 32-bit embedded processor */ /**{@code Infineon Technologies 32-bit embedded processor}*/
public static final short EM_JAVELIN = 77; public static final short EM_JAVELIN = 77;
/** Element 14 64-bit DSP Processor */ /**{@code Element 14 64-bit DSP Processor}*/
public static final short EM_FIREPATH = 78; public static final short EM_FIREPATH = 78;
/** LSI Logic 16-bit DSP Processor */ /**{@code LSI Logic 16-bit DSP Processor}*/
public static final short EM_ZSP = 79; public static final short EM_ZSP = 79;
/** Donald Knuth's educational 64-bit processor */ /**{@code Donald Knuth's educational 64-bit processor}*/
public static final short EM_MMIX = 80; public static final short EM_MMIX = 80;
/** Harvard University machine-independent object files */ /** Harvard University machine-independent object files */
public static final short EM_HUANY = 81; public static final short EM_HUANY = 81;
/** SiTera Prism */ /** SiTera Prism */
public static final short EM_PRISM = 82; public static final short EM_PRISM = 82;
/** Atmel AVR 8-bit microcontroller */ /**{@code Atmel AVR 8-bit microcontroller}*/
public static final short EM_AVR = 83; public static final short EM_AVR = 83;
/** Fujitsu FR30 */ /**{@code Fujitsu FR30}*/
public static final short EM_FR30 = 84; public static final short EM_FR30 = 84;
/** Mitsubishi D10V */ /**{@code Mitsubishi D10V}*/
public static final short EM_D10V = 85; public static final short EM_D10V = 85;
/** Mitsubishi D30V */ /**{@code Mitsubishi D30V}*/
public static final short EM_D30V = 86; public static final short EM_D30V = 86;
/** NEC v850 */ /**{@code NEC v850}*/
public static final short EM_V850 = 87; public static final short EM_V850 = 87;
/** Mitsubishi M32R */ /**{@code Mitsubishi M32R}*/
public static final short EM_M32R = 88; public static final short EM_M32R = 88;
/** Matsushita MN10300 */ /**{@code Matsushita MN10300}*/
public static final short EM_MN10300 = 89; public static final short EM_MN10300 = 89;
/** Matsushita MN10200 */ /**{@code Matsushita MN10200}*/
public static final short EM_MN10200 = 90; public static final short EM_MN10200 = 90;
/** picoJava */ /** picoJava */
public static final short EM_PJ = 91; public static final short EM_PJ = 91;
/** OpenRISC 32-bit embedded processor */ /**{@code OpenRISC 32-bit embedded processor}*/
public static final short EM_OPENRISC = 92; public static final short EM_OPENRISC = 92;
/** ARC Cores Tangent-A5 */ /**{@code ARC Cores Tangent-A5}*/
public static final short EM_ARC_A5 = 93; public static final short EM_ARC_A5 = 93;
/** Tensilica Xtensa Architecture */ /** Tensilica Xtensa Architecture */
public static final short EM_XTENSA = 94; public static final short EM_XTENSA = 94;
@ -313,27 +313,27 @@ public interface ElfConstants {
public static final short EM_VIDEOCORE = 95; public static final short EM_VIDEOCORE = 95;
/** Thompson Multimedia General Purpose Processor*/ /** Thompson Multimedia General Purpose Processor*/
public static final short EM_TMM_GPP = 96; public static final short EM_TMM_GPP = 96;
/** National Semiconductor 32000 series */ /**{@code National Semiconductor 32000 series}*/
public static final short EM_NS32K = 97; public static final short EM_NS32K = 97;
/** Tenor Network TPC processor */ /** Tenor Network TPC processor */
public static final short EM_TPC = 98; public static final short EM_TPC = 98;
/** Trebia SNP 1000 processor */ /**{@code Trebia SNP 1000 processor}*/
public static final short EM_SNP1K = 99; public static final short EM_SNP1K = 99;
/** STMicroelectronics (www.st.com) ST200 */ /**{@code STMicroelectronics (www.st.com) ST200}*/
public static final short EM_ST200 = 100; public static final short EM_ST200 = 100;
/** Ubicom IP2xxx microcontroller family */ /**{@code Ubicom IP2xxx microcontroller family}*/
public static final short EM_IP2K = 101; public static final short EM_IP2K = 101;
/** MAX Processor */ /** MAX Processor */
public static final short EM_MAX = 102; public static final short EM_MAX = 102;
/** National Semiconductor CompactRISC microprocessor */ /** National Semiconductor CompactRISC microprocessor */
public static final short EM_CR = 103; public static final short EM_CR = 103;
/** Fujitsu F2MC16 */ /**{@code Fujitsu F2MC16}*/
public static final short EM_F2MC16 = 104; public static final short EM_F2MC16 = 104;
/** Texas Instruments embedded microcontroller msp430 */ /**{@code Texas Instruments embedded microcontroller msp430}*/
public static final short EM_MSP430 = 105; public static final short EM_MSP430 = 105;
/** Analog Devices Blackfin (DSP) processor */ /** Analog Devices Blackfin (DSP) processor */
public static final short EM_BLACKFIN = 106; public static final short EM_BLACKFIN = 106;
/** S1C33 Family of Seiko Epson processors */ /**{@code S1C33 Family of Seiko Epson processors}*/
public static final short EM_SE_C33 = 107; public static final short EM_SE_C33 = 107;
/** Sharp embedded microprocessor */ /** Sharp embedded microprocessor */
public static final short EM_SEP = 108; public static final short EM_SEP = 108;
@ -341,7 +341,7 @@ public interface ElfConstants {
public static final short EM_ARCA = 109; public static final short EM_ARCA = 109;
/** Microprocessor series from PKU-Unity Ltd. and MPRC of Peking University */ /** Microprocessor series from PKU-Unity Ltd. and MPRC of Peking University */
public static final short EM_UNICORE = 110; public static final short EM_UNICORE = 110;
/** eXcess: 16/32/64-bit configurable embedded CPU */ /**{@code eXcess: 16/32/64-bit configurable embedded CPU}*/
public static final short EM_EXCESS = 111; public static final short EM_EXCESS = 111;
/** Icera Semiconductor Inc. Deep Execution Processor */ /** Icera Semiconductor Inc. Deep Execution Processor */
public static final short EM_DXP = 112; public static final short EM_DXP = 112;
@ -351,67 +351,67 @@ public interface ElfConstants {
public static final short EM_CRX = 114; public static final short EM_CRX = 114;
/** Motorola XGATE embedded processor */ /** Motorola XGATE embedded processor */
public static final short EM_XGATE = 115; public static final short EM_XGATE = 115;
/** Infineon C16x/XC16x processor */ /**{@code Infineon C16x/XC16x processor}*/
public static final short EM_C166 = 116; public static final short EM_C166 = 116;
/** Renesas M16C series microprocessors */ /**{@code Renesas M16C series microprocessors}*/
public static final short EM_M16C = 117; public static final short EM_M16C = 117;
/** Microchip Technology dsPIC30F Digital Signal Controller **/ /**{@code Microchip Technology dsPIC30F Digital Signal Controller}*/
public static final short EM_DSPIC30F = 118; public static final short EM_DSPIC30F = 118;
/** Freescale Communication Engine RISC core */ /** Freescale Communication Engine RISC core */
public static final short EM_CE = 119; public static final short EM_CE = 119;
/** Renesas M32C series microprocessors*/ /**{@code Renesas M32C series microprocessors*}*/
public static final short EM_M32C = 120; public static final short EM_M32C = 120;
/** Altium TSK3000 core */ /**{@code Altium TSK3000 core}*/
public static final short EM_TSK3000 = 131; public static final short EM_TSK3000 = 131;
/** Freescale RS08 embedded processor */ /**{@code Freescale RS08 embedded processor}*/
public static final short EM_RS08 = 132; public static final short EM_RS08 = 132;
/** Analog Devices SHARC family of 32-bit DSP processors */ /**{@code Analog Devices SHARC family of 32-bit DSP processors}*/
public static final short EM_SHARC = 133; public static final short EM_SHARC = 133;
/** Cyan Technology eCOG2 microprocessor */ /**{@code Cyan Technology eCOG2 microprocessor}*/
public static final short EM_ECOG2 = 134; public static final short EM_ECOG2 = 134;
/** Sunplus S+core7 RISC processor */ /**{@code Sunplus S+core7 RISC processor}*/
public static final short EM_SCORE7 = 135; public static final short EM_SCORE7 = 135;
/** New Japan Radio (NJR) 24-bit DSP Processor */ /**{@code New Japan Radio (NJR) 24-bit DSP Processor}*/
public static final short EM_DSP24 = 136; public static final short EM_DSP24 = 136;
/** Broadcom VideoCore III processor */ /** Broadcom VideoCore III processor */
public static final short EM_VIDEOCORE3 = 137; public static final short EM_VIDEOCORE3 = 137;
/** RISC processor for Lattice FPGA architecture */ /** RISC processor for Lattice FPGA architecture */
public static final short EM_LATTICEMICO32 = 138; public static final short EM_LATTICEMICO32 = 138;
/** Seiko Epson C17 family */ /**{@code Seiko Epson C17 family}*/
public static final short EM_SE_C17 = 139; public static final short EM_SE_C17 = 139;
/** The Texas Instruments TMS320C6000 DSP family */ /**{@code The Texas Instruments TMS320C6000 DSP family}*/
public static final short EM_TI_C6000 = 140; public static final short EM_TI_C6000 = 140;
/** The Texas Instruments TMS320C2000 DSP family */ /**{@code The Texas Instruments TMS320C2000 DSP family}*/
public static final short EM_TI_C2000 = 141; public static final short EM_TI_C2000 = 141;
/** The Texas Instruments TMS320C55x DSP family */ /**{@code The Texas Instruments TMS320C55x DSP family}*/
public static final short EM_TI_C5500 = 142; public static final short EM_TI_C5500 = 142;
/** STMicroelectronics 64bit VLIW Data Signal Processor */ /**{@code STMicroelectronics 64bit VLIW Data Signal Processor}*/
public static final short EM_MMDSP_PLUS = 160; public static final short EM_MMDSP_PLUS = 160;
/** Cypress M8C microprocessor */ /**{@code Cypress M8C microprocessor}*/
public static final short EM_CYPRESS_M8C = 161; public static final short EM_CYPRESS_M8C = 161;
/** Renesas R32C series microprocessors */ /**{@code Renesas R32C series microprocessors}*/
public static final short EM_R32C = 162; public static final short EM_R32C = 162;
/** NXP Semiconductors TriMedia architecture family */ /** NXP Semiconductors TriMedia architecture family */
public static final short EM_TRIMEDIA = 163; public static final short EM_TRIMEDIA = 163;
/** Qualcomm Hexagon processor */ /** Qualcomm Hexagon processor */
public static final short EM_HEXAGON = 164; public static final short EM_HEXAGON = 164;
/** Intel 8051 and variants */ /**{@code Intel 8051 and variants}*/
public static final short EM_8051 = 165; public static final short EM_8051 = 165;
/** STMicroelectronics STxP7x family of RISC processors */ /**{@code STMicroelectronics STxP7x family of RISC processors}*/
public static final short EM_STXP7X = 166; public static final short EM_STXP7X = 166;
/** Andes Technology compact code size embedded RISC processor family */ /** Andes Technology compact code size embedded RISC processor family */
public static final short EM_NDS32 = 167; public static final short EM_NDS32 = 167;
/** Cyan Technology eCOG1X family */ /**{@code Cyan Technology eCOG1X family}*/
public static final short EM_ECOG1 = 168; public static final short EM_ECOG1 = 168;
/** Cyan Technology eCOG1X family */ /**{@code Cyan Technology eCOG1X family}*/
public static final short EM_ECOG1X = 168; public static final short EM_ECOG1X = 168;
/** Dallas Semiconductor MAXQ30 Core Micro-controllers */ /**{@code Dallas Semiconductor MAXQ30 Core Micro-controllers}*/
public static final short EM_MAXQ30 = 169; public static final short EM_MAXQ30 = 169;
/** New Japan Radio (NJR) 16-bit DSP Processor */ /**{@code New Japan Radio (NJR) 16-bit DSP Processor}*/
public static final short EM_XIMO16 = 170; public static final short EM_XIMO16 = 170;
/** M2000 Reconfigurable RISC Microprocessor */ /**{@code M2000 Reconfigurable RISC Microprocessor}*/
public static final short EM_MANIK = 171; public static final short EM_MANIK = 171;
/** Cray Inc. NV2 vector architecture */ /**{@code Cray Inc. NV2 vector architecture}*/
public static final short EM_CRAYNV2 = 172; public static final short EM_CRAYNV2 = 172;
/** Renesas RX family */ /** Renesas RX family */
public static final short EM_RX = 173; public static final short EM_RX = 173;
@ -419,26 +419,26 @@ public interface ElfConstants {
public static final short EM_METAG = 174; public static final short EM_METAG = 174;
/** MCST Elbrus general purpose hardware architecture */ /** MCST Elbrus general purpose hardware architecture */
public static final short EM_MCST_ELBRUS = 175; public static final short EM_MCST_ELBRUS = 175;
/** Cyan Technology eCOG16 family */ /**{@code Cyan Technology eCOG16 family}*/
public static final short EM_ECOG16 = 176; public static final short EM_ECOG16 = 176;
/** National Semiconductor CompactRISC CR16 16-bitmicroprocessor */ /**{@code National Semiconductor CompactRISC CR16 16-bitmicroprocessor}*/
public static final short EM_CR16 = 177; public static final short EM_CR16 = 177;
/** Freescale Extended Time Processing Unit */ /** Freescale Extended Time Processing Unit */
public static final short EM_ETPU = 178; public static final short EM_ETPU = 178;
/** Infineon Technologies SLE9X core */ /**{@code Infineon Technologies SLE9X core}*/
public static final short EM_SLE9X = 179; public static final short EM_SLE9X = 179;
/** Intel L10M */ /**{@code Intel L10M}*/
public static final short EM_L10M = 180; public static final short EM_L10M = 180;
/** Intel K10M */ /**{@code Intel K10M}*/
public static final short EM_K10M = 181; public static final short EM_K10M = 181;
// 182 reserved // 182 reserved
/** AARCH64 Architecture **/ /**{@code AARCH64 Architecture}*/
public static final short EM_AARCH64 = 183; public static final short EM_AARCH64 = 183;
/** Atmel Corporation 32-bit microprocessor family */ /**{@code Atmel Corporation 32-bit microprocessor family}*/
public static final short EM_AVR32 = 185; public static final short EM_AVR32 = 185;
/** STMicroeletronics STM8 8-bit microcontroller */ /**{@code STMicroeletronics STM8 8-bit microcontroller}*/
public static final short EM_STM8 = 186; public static final short EM_STM8 = 186;
/** Tilera TILE64 multicore architecture family */ /**{@code Tilera TILE64 multicore architecture family}*/
public static final short EM_TILE64 = 187; public static final short EM_TILE64 = 187;
/** Tilera TILEPro multicore architecture family */ /** Tilera TILEPro multicore architecture family */
public static final short EM_TILEPRO = 188; public static final short EM_TILEPRO = 188;
@ -448,37 +448,37 @@ public interface ElfConstants {
public static final short EM_TILEGX = 191; public static final short EM_TILEGX = 191;
/** CloudShield architecture family */ /** CloudShield architecture family */
public static final short EM_CLOUDSHIELD = 192; public static final short EM_CLOUDSHIELD = 192;
/** KIPO-KAIST Core-A 1st generation processor family */ /**{@code KIPO-KAIST Core-A 1st generation processor family}*/
public static final short EM_COREA_1ST = 193; public static final short EM_COREA_1ST = 193;
/** KIPO-KAIST Core-A 2nd generation processor family */ /**{@code KIPO-KAIST Core-A 2nd generation processor family}*/
public static final short EM_COREA_2ND = 194; public static final short EM_COREA_2ND = 194;
/** Synopsys ARCompact V2 */ /**{@code Synopsys ARCompact V2}*/
public static final short EM_ARC_COMPACT2 = 195; public static final short EM_ARC_COMPACT2 = 195;
/** Open8 8-bit RISC soft processor core */ /**{@code Open8 8-bit RISC soft processor core}*/
public static final short EM_OPEN8 = 196; public static final short EM_OPEN8 = 196;
/** Renesas RL78 family */ /**{@code Renesas RL78 family}*/
public static final short EM_RL78 = 197; public static final short EM_RL78 = 197;
/** Broadcom VideoCore V processor */ /** Broadcom VideoCore V processor */
public static final short EM_VIDEOCORE5 = 198; public static final short EM_VIDEOCORE5 = 198;
/** Renesas 78KOR family */ /**{@code Renesas 78KOR family}*/
public static final short EM_78KOR = 199; public static final short EM_78KOR = 199;
/** Freescale 56800EX Digital Signal Controller (DSC) */ /**{@code Freescale 56800EX Digital Signal Controller (DSC)}*/
public static final short EM_56800EX = 200; public static final short EM_56800EX = 200;
/** Beyond BA1 CPU */ /**{@code Beyond BA1 CPU}*/
public static final short EM_BA1 = 201; public static final short EM_BA1 = 201;
/** Beyond BA2 CPU */ /**{@code Beyond BA2 CPU}*/
public static final short EM_BA2 = 202; public static final short EM_BA2 = 202;
/** XMOS xCORE processor family */ /** XMOS xCORE processor family */
public static final short EM_XCORE = 203; public static final short EM_XCORE = 203;
/** KM211 KM32 32-bit processor */ /**{@code KM211 KM32 32-bit processor}*/
public static final short EM_KM32 = 210; public static final short EM_KM32 = 210;
/** KM211 KMX32 32-bit processor */ /**{@code KM211 KMX32 32-bit processor}*/
public static final short EM_KMX32 = 211; public static final short EM_KMX32 = 211;
/** KM211 KMX16 16-bit processor */ /**{@code KM211 KMX16 16-bit processor}*/
public static final short EM_KMX16 = 212; public static final short EM_KMX16 = 212;
/** KM211 KMX8 8-bit processor */ /**{@code KM211 KMX8 8-bit processor}*/
public static final short EM_KMX8 = 213; public static final short EM_KMX8 = 213;
/** KM211 KVARC processor */ /**{@code KM211 KVARC processor}*/
public static final short EM_KVARC = 214; public static final short EM_KVARC = 214;
/** Paneve CDP architecture family */ /** Paneve CDP architecture family */
public static final short EM_CDP = 215; public static final short EM_CDP = 215;
@ -494,12 +494,12 @@ public interface ElfConstants {
public static final short EM_AMDGPU = 224; public static final short EM_AMDGPU = 224;
/** RISC-V */ /** RISC-V */
public static final short EM_RISCV = 243; public static final short EM_RISCV = 243;
/** Lanai 32-bit processor */ /**{@code Lanai 32-bit processor}*/
public static final short EM_LANAI = 244; public static final short EM_LANAI = 244;
/** Linux kernel bpf virtual machine */ /** Linux kernel bpf virtual machine */
public static final short EM_BPF = 247; public static final short EM_BPF = 247;
/** used by NetBSD/avr32 - AVR 32-bit */ /**{@code used by NetBSD/avr32 - AVR 32-bit}*/
public static final short EM_AVR32_unofficial = 0x18ad; public static final short EM_AVR32_unofficial = 0x18ad;
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////

View file

@ -22,9 +22,9 @@ import ghidra.app.util.bin.format.FactoryBundledWithBinaryReader;
import ghidra.util.*; import ghidra.util.*;
/** /**
* A class to represent the Elf32_Dyn data structure. * A class to represent the Elf<code>32</code>_Dyn data structure.
* *
* <pre> * <pre><code>
* typedef int32_t Elf32_Sword; * typedef int32_t Elf32_Sword;
* typedef uint32_t Elf32_Word; * typedef uint32_t Elf32_Word;
* typedef uint32_t Elf32_Addr; * typedef uint32_t Elf32_Addr;
@ -49,7 +49,7 @@ import ghidra.util.*;
* } d_un; * } d_un;
* } Elf64_Dyn; * } Elf64_Dyn;
* *
* </pre> * </code></pre>
*/ */
public class ElfDynamic implements ByteArrayConverter { public class ElfDynamic implements ByteArrayConverter {
@ -89,7 +89,7 @@ FactoryBundledWithBinaryReader reader, ElfHeader elf)
* Constructs a new ELF dynamic with the specified tag and value. * Constructs a new ELF dynamic with the specified tag and value.
* @param tag the tag (or type) of this dynamic * @param tag the tag (or type) of this dynamic
* @param value the value (or pointer) of this dynamic * @param value the value (or pointer) of this dynamic
* @param is32bit true if this object is a 32-bit dynamic, false if 64-bit dynamic * @param elf the elf header
*/ */
public ElfDynamic(int tag, long value, ElfHeader elf) { public ElfDynamic(int tag, long value, ElfHeader elf) {
this.d_tag = tag; this.d_tag = tag;
@ -101,7 +101,7 @@ FactoryBundledWithBinaryReader reader, ElfHeader elf)
* Constructs a new ELF dynamic with the specified (enum) tag and value. * Constructs a new ELF dynamic with the specified (enum) tag and value.
* @param tag the (enum) tag (or type) of this dynamic * @param tag the (enum) tag (or type) of this dynamic
* @param value the value (or pointer) of this dynamic * @param value the value (or pointer) of this dynamic
* @param is32bit true if this object is a 32-bit dynamic, false if 64-bit dynamic * @param elf the elf header
*/ */
public ElfDynamic(ElfDynamicType tag, long value, ElfHeader elf) { public ElfDynamic(ElfDynamicType tag, long value, ElfHeader elf) {
this(tag.value, value, elf); this(tag.value, value, elf);

View file

@ -74,15 +74,14 @@ public interface ElfLoadHelper {
* @param name name of function or null for default (or label already applied) * @param name name of function or null for default (or label already applied)
* @param address address of function * @param address address of function
* @param isEntry mark function as entry point if true * @param isEntry mark function as entry point if true
* @param log
* @return new or existing function. * @return new or existing function.
*/ */
Function createOneByteFunction(String name, Address address, boolean isEntry); Function createOneByteFunction(String name, Address address, boolean isEntry);
/** /**
* Create an external function within the UNKNOWN space and a corresponding thunk at * Create an external function within the UNKNOWN space and a corresponding thunk at
* the internalFunctionAddr. If the functionAddr and/or indirectPointerAddr has a symbol with <name> * the internalFunctionAddr. If the functionAddr and/or indirectPointerAddr has a symbol with
* it will be removed so as not to replicate the external function name. * {@code <name>} it will be removed so as not to replicate the external function name.
* @param name external function name * @param name external function name
* @param functionAddr location of thunk function (memory address only) * @param functionAddr location of thunk function (memory address only)
* @param indirectPointerAddr if not null a pointer to functionAddr will be written (size of pointer * @param indirectPointerAddr if not null a pointer to functionAddr will be written (size of pointer
@ -146,7 +145,7 @@ public interface ElfLoadHelper {
/** /**
* Get the program address for an addressableWordOffset within the default address space. * Get the program address for an addressableWordOffset within the default address space.
* This method is responsible for applying any program image base change imposed during * This method is responsible for applying any program image base change imposed during
* the import (see {@link #getImageBaseWordOffset(Program, ElfHeader)}. * the import (see {@link #getImageBaseWordAdjustmentOffset()}.
* @param addressableWordOffset absolute word offset. The offset should already include * @param addressableWordOffset absolute word offset. The offset should already include
* default image base and pre-link adjustment (see {@link ElfHeader#adjustAddressForPrelink(long)}). * default image base and pre-link adjustment (see {@link ElfHeader#adjustAddressForPrelink(long)}).
* @return memory address in default code space * @return memory address in default code space
@ -183,7 +182,7 @@ public interface ElfLoadHelper {
* small 16-bit default memory space, or when shared memory regions exist. * small 16-bit default memory space, or when shared memory regions exist.
* </p> * </p>
* @param alignment required byte alignment of allocated range * @param alignment required byte alignment of allocated range
* @param size size of requested allocation (size <= 0 reserved for EXTERNAL block) * @param size size of requested allocation (size &lt;= 0 reserved for EXTERNAL block)
* @param purpose brief descriptive purpose of range. * @param purpose brief descriptive purpose of range.
* @return address range or null if no unallocated range found * @return address range or null if no unallocated range found
*/ */

View file

@ -182,7 +182,7 @@ public class ElfSectionHeaderConstants {
public static final short SHN_ABS = (short) 0xfff1; public static final short SHN_ABS = (short) 0xfff1;
/**common symbols, such as Fortran COMMON or unallocated C external vars*/ /**common symbols, such as Fortran COMMON or unallocated C external vars*/
public static final short SHN_COMMON = (short) 0xfff2; public static final short SHN_COMMON = (short) 0xfff2;
/** Mark that the index is >= SHN_LORESERVE */ /** Mark that the index is &gt;= SHN_LORESERVE */
public static final short SHN_XINDEX = (short) 0xffff; public static final short SHN_XINDEX = (short) 0xffff;
/**upper bound on range of reserved indexes*/ /**upper bound on range of reserved indexes*/
public static final short SHN_HIRESERVE = (short) 0xffff; public static final short SHN_HIRESERVE = (short) 0xffff;

View file

@ -27,15 +27,12 @@ public class ElfStringTable implements ElfFileSection {
/** /**
* Create and parse an Elf string table * Create and parse an Elf string table
* @param reader * @param reader the binary reader containing the elf string table
* @param header elf header * @param header elf header
* @param stringTableSection string table section header or null if associated with a dynamic table entry * @param stringTableSection string table section header or null if associated with a dynamic table entry
* @param fileOffset symbol table file offset * @param fileOffset symbol table file offset
* @param addrOffset memory address of symbol table (should already be adjusted for prelink) * @param addrOffset memory address of symbol table (should already be adjusted for prelink)
* @param length length of symbol table in bytes of -1 if unknown * @param length length of symbol table in bytes of -1 if unknown
* @param entrySize size of each symbol entry in bytes
* @param sectionType symbol table section type (SHT_DYNSYM, SHT_SYMTAB, or -1 if not section-based)
* @param stringTable string table to be associated with symbol table
* @return Elf string table object * @return Elf string table object
* @throws IOException * @throws IOException
*/ */

View file

@ -166,7 +166,7 @@ public class ElfLoadAdapter {
/** /**
* Get the default alignment within the default address space. * Get the default alignment within the default address space.
* @param load helper object * @param elfLoadHelper helper object
* @return default alignment within the default address space. * @return default alignment within the default address space.
*/ */
public int getDefaultAlignment(ElfLoadHelper elfLoadHelper) { public int getDefaultAlignment(ElfLoadHelper elfLoadHelper) {
@ -234,7 +234,7 @@ public class ElfLoadAdapter {
* a more accurate check based upon the actual language utilized. While the ELF header * a more accurate check based upon the actual language utilized. While the ELF header
* may have stipulated a specific processor via the machine-id, a completely different * may have stipulated a specific processor via the machine-id, a completely different
* and incompatible language may have been used. * and incompatible language may have been used.
* @param elf elf header * @param elfLoadHelper elf header
* @return true if this extension can properly support the ELF header and the * @return true if this extension can properly support the ELF header and the
* current program/language. * current program/language.
*/ */
@ -425,7 +425,7 @@ public class ElfLoadAdapter {
/** /**
* Return the memory section size in bytes for the specified section header. * Return the memory section size in bytes for the specified section header.
* The returned value will be consistent with any byte filtering which may be required. * The returned value will be consistent with any byte filtering which may be required.
* @param ElfSectionHeader * @param section the section header
* @return preferred memory block size in bytes which corresponds to the specified section header * @return preferred memory block size in bytes which corresponds to the specified section header
*/ */
public long getAdjustedSize(ElfSectionHeader section) { public long getAdjustedSize(ElfSectionHeader section) {

View file

@ -43,12 +43,9 @@ public class ElfRelocationContext {
/** /**
* Relocation context for a specific Elf image and relocation table * Relocation context for a specific Elf image and relocation table
* @param handler relocation handler or null if not available * @param handler relocation handler or null if not available
* @param elf Elf header * @param loadHelper the elf load helper
* @param relocationTable Elf relocation table * @param relocationTable Elf relocation table
* @param symbolMap Elf symbol placement map * @param symbolMap Elf symbol placement map
* @param nextFreeAddress next available address to be used by relocations if needed (e.g.,
* synthetic GOT, EXTERNAL block, etc.)
* @param program Target program
*/ */
protected ElfRelocationContext(ElfRelocationHandler handler, ElfLoadHelper loadHelper, protected ElfRelocationContext(ElfRelocationHandler handler, ElfLoadHelper loadHelper,
ElfRelocationTable relocationTable, Map<ElfSymbol, Address> symbolMap) { ElfRelocationTable relocationTable, Map<ElfSymbol, Address> symbolMap) {

View file

@ -140,9 +140,9 @@ public class SegmentCommand extends LoadCommand {
/** /**
* Returns a octal model value reflecting the * Returns a octal model value reflecting the
* segment's maximum protection value allowed. * segment's maximum protection value allowed.
* For example: * For example:{@code
* 7 -> 0x111 -> rwx * 7 -> 0x111 -> rwx
* 5 -> 0x101 -> rx * 5 -> 0x101 -> rx}
* @return the maximum protections of a segment * @return the maximum protections of a segment
*/ */
public int getMaxProtection() { public int getMaxProtection() {
@ -152,9 +152,9 @@ public class SegmentCommand extends LoadCommand {
/** /**
* Returns a octal model value reflecting the * Returns a octal model value reflecting the
* segment's initial protection value. * segment's initial protection value.
* For example: * For example:{@code
* 7 -> 0x111 -> rwx * 7 -> 0x111 -> rwx
* 5 -> 0x101 -> rx * 5 -> 0x101 -> rx}
* @return the initial protections of a segment * @return the initial protections of a segment
*/ */
public int getInitProtection() { public int getInitProtection() {

View file

@ -411,7 +411,7 @@ public class InformationBlock {
/** /**
* Returns the index to the start of the resource table, * Returns the index to the start of the resource table,
* relative to the beginning of the NE windows header. * relative to the beginning of the NE windows header.
* @returns the index to the start of the resource table * @return the index to the start of the resource table
*/ */
short getResourceTableOffset() { short getResourceTableOffset() {
return ne_rsrctab; return ne_rsrctab;

View file

@ -78,7 +78,7 @@ public class FileHeader implements StructConverter {
*/ */
public final static int IMAGE_FILE_AGGRESIVE_WS_TRIM = 0x0010; public final static int IMAGE_FILE_AGGRESIVE_WS_TRIM = 0x0010;
/** /**
* App can handle >2gb addresses * App can handle &gt;2gb addresses
*/ */
public final static int IMAGE_FILE_LARGE_ADDRESS_AWARE = 0x0020; public final static int IMAGE_FILE_LARGE_ADDRESS_AWARE = 0x0020;
/** /**
@ -442,7 +442,7 @@ public class FileHeader implements StructConverter {
* file. * file.
* @param block the memory block template * @param block the memory block template
* @param optionalHeader the related optional header * @param optionalHeader the related optional header
* @throws MemoryAccessException if the memory block is uninitialized * @throws RuntimeException if the memory block is uninitialized
*/ */
public void addSection(MemoryBlock block, OptionalHeader optionalHeader) { public void addSection(MemoryBlock block, OptionalHeader optionalHeader) {
DataDirectory [] directories = optionalHeader.getDataDirectories(); DataDirectory [] directories = optionalHeader.getDataDirectories();

View file

@ -18,7 +18,7 @@ package ghidra.app.util.bin.format.pe;
/** /**
* PE machine ID constants defined by standard header file 'ntimage.h' * PE machine ID constants defined by standard header file 'ntimage.h'
* *
* @see https://msdn.microsoft.com/en-us/library/windows/desktop/mt804345%28v=vs.85%29.aspx * @see <a href="https://msdn.microsoft.com/en-us/library/windows/desktop/mt804345%28v=vs.85%29.aspx">Image File Machine Constants</a>
*/ */
public class MachineConstants { public class MachineConstants {

View file

@ -62,7 +62,7 @@ public class PortableExecutable {
* @param bp the byte provider * @param bp the byte provider
* @param layout specifies the layout of the underlying provider and governs RVA resolution * @param layout specifies the layout of the underlying provider and governs RVA resolution
* @throws IOException if an I/O error occurs. * @throws IOException if an I/O error occurs.
* @see {@link #createPortableExecutable(GenericFactory, ByteProvider, Alignment, boolean, boolean)} * @see #createPortableExecutable(GenericFactory, ByteProvider, SectionLayout, boolean, boolean)
**/ **/
public static PortableExecutable createPortableExecutable(GenericFactory factory, public static PortableExecutable createPortableExecutable(GenericFactory factory,
ByteProvider bp, SectionLayout layout) throws IOException { ByteProvider bp, SectionLayout layout) throws IOException {

View file

@ -70,7 +70,7 @@ public class CliMetadataRoot implements StructConverter, PeMarkupable {
* *
* @param reader A binary reader set to start reading at the start of this header. * @param reader A binary reader set to start reading at the start of this header.
* @param rva The RVA of this header. * @param rva The RVA of this header.
* @throws if there is a problem reading the header. * @throws IOException if there is a problem reading the header.
*/ */
public CliMetadataRoot(BinaryReader reader, int rva) public CliMetadataRoot(BinaryReader reader, int rva)
throws IOException { throws IOException {

View file

@ -52,10 +52,9 @@ public class CliStreamHeader implements StructConverter, PeMarkupable {
/** /**
* Constructs a new CLI Stream Header datatype. * Constructs a new CLI Stream Header datatype.
* *
* @param metadataRoot the metadata root.
* @param reader A binary reader set to start reading at the start of this header. * @param reader A binary reader set to start reading at the start of this header.
* @param virtualAddress The RVA of this header. * @throws IOException if there is a problem reading the header.
* @param ntHeader The NT header.
* @throws if there is a problem reading the header.
*/ */
public CliStreamHeader(CliMetadataRoot metadataRoot, BinaryReader reader) public CliStreamHeader(CliMetadataRoot metadataRoot, BinaryReader reader)
throws IOException { throws IOException {

View file

@ -27,8 +27,8 @@ import ghidra.util.exception.AssertException;
* <p> * <p>
* Paraphrasing from ISO 23271:2012 11.24.2.4 (p272): * Paraphrasing from ISO 23271:2012 11.24.2.4 (p272):
* - If the first one byte of the 'blob' is 0bbbbbbb_2: size is bbbbbbb_2 bytes. * - If the first one byte of the 'blob' is 0bbbbbbb_2: size is bbbbbbb_2 bytes.
* - If the first two bytes are 10bbbbbb_2 and x: size is (bbbbbb_2 << 8 + x) bytes. * - {@literal If the first two bytes are 10bbbbbb_2 and x: size is (bbbbbb_2 << 8 + x) bytes.}
* - If the first four bytes are 110bbbbb_2, x, y, and z: size is (bbbbb_2<<24 + x<<16 + y<<8 + z) bytes. * - {@literal If the first four bytes are 110bbbbb_2, x, y, and z: size is (bbbbb_2<<24 + x<<16 + y<<8 + z) bytes.}
* The first entry in the heap is the empty 'blob' consisting of a single zero byte. * The first entry in the heap is the empty 'blob' consisting of a single zero byte.
*/ */
public class CliBlob implements StructConverter { public class CliBlob implements StructConverter {

View file

@ -46,7 +46,7 @@ public class CliSigField extends CliAbstractSig {
/** /**
* Checks whether this could *possibly* be a FieldSig. Only looks at the identifier byte. Useful for signature index * Checks whether this could *possibly* be a FieldSig. Only looks at the identifier byte. Useful for signature index
* that could be to different kinds of signatures. * that could be to different kinds of signatures.
* @param reader * @param blob
* @return * @return
* @throws IOException * @throws IOException
*/ */

View file

@ -55,7 +55,7 @@ public class CliSigLocalVar extends CliAbstractSig {
/** /**
* Checks whether this could *possibly* be a LocalVarSig. Only looks at the identifier byte. Useful for signature index * Checks whether this could *possibly* be a LocalVarSig. Only looks at the identifier byte. Useful for signature index
* that could be to different kinds of signatures. * that could be to different kinds of signatures.
* @param reader * @param blob
* @return * @return
* @throws IOException * @throws IOException
*/ */

View file

@ -97,7 +97,7 @@ public class CliStreamBlob extends CliAbstractStream {
* Updates the blob at the given address with the new blob. * Updates the blob at the given address with the new blob.
* *
* @param updatedBlob The updated blob. * @param updatedBlob The updated blob.
* @param address The address of the blob to update. * @param addr The address of the blob to update.
* @param program The program that will get the update. * @param program The program that will get the update.
*/ */
public boolean updateBlob(CliBlob updatedBlob, Address addr, Program program) { public boolean updateBlob(CliBlob updatedBlob, Address addr, Program program) {

View file

@ -67,8 +67,8 @@ public class CliStreamMetadata extends CliAbstractStream {
* *
* @param header The stream header associated with this stream. * @param header The stream header associated with this stream.
* @param guidStream The GUID stream. * @param guidStream The GUID stream.
* @param userStringStream The user strings stream. * @param userStringsStream The user strings stream.
* @param stringsStrings The strings stream. * @param stringsStream The strings stream.
* @param blobStream The blob stream. * @param blobStream The blob stream.
* @param fileOffset The file offset where this stream starts. * @param fileOffset The file offset where this stream starts.
* @param rva The relative virtual address where this stream starts. * @param rva The relative virtual address where this stream starts.

View file

@ -81,7 +81,6 @@ public class CliStreamStrings extends CliAbstractStream {
/** /**
* Gets the string at the given index. * Gets the string at the given index.
* *
* @param The {@link CliMetadataRoot} that may point to the {@link CliStreamStrings}.
* @param index The index of the string to get. * @param index The index of the string to get.
* @return The string at the given index. Could be null if the index was invalid or there was * @return The string at the given index. Could be null if the index was invalid or there was
* a problem reading the string. * a problem reading the string.

View file

@ -217,7 +217,7 @@ public abstract class CliAbstractTable implements StructConverter, PeMarkupable
/** /**
* Convenience method for getting a safe row representation of a table. * Convenience method for getting a safe row representation of a table.
* *
* @param table The table that has the row. * @param otherTable The table that has the row.
* @param index The index of the row. * @param index The index of the row.
* @return The safe row representation of a table. * @return The safe row representation of a table.
*/ */

View file

@ -42,6 +42,7 @@ import java.io.*;
* BYTE StorageClass; * BYTE StorageClass;
* BYTE NumberOfAuxSymbols; * BYTE NumberOfAuxSymbols;
* } IMAGE_SYMBOL; * } IMAGE_SYMBOL;
* </pre>
*/ */
public class DebugCOFFSymbol implements StructConverter { public class DebugCOFFSymbol implements StructConverter {
private static final int NAME_LENGTH = 8; private static final int NAME_LENGTH = 8;

View file

@ -59,6 +59,7 @@ import ghidra.util.exception.DuplicateNameException;
* BYTE Selection; // communal selection type * BYTE Selection; // communal selection type
* } Section; * } Section;
* } IMAGE_AUX_SYMBOL; * } IMAGE_AUX_SYMBOL;
* </pre>
*/ */
public class DebugCOFFSymbolAux implements StructConverter { public class DebugCOFFSymbolAux implements StructConverter {
public final static byte IMAGE_SIZEOF_AUX_SYMBOL = 18; public final static byte IMAGE_SIZEOF_AUX_SYMBOL = 18;

View file

@ -87,7 +87,7 @@ public class DebugDirectoryParser {
* @param reader the binary reader * @param reader the binary reader
* @param ptr the pointer into the binary reader * @param ptr the pointer into the binary reader
* @param size the size of the directory * @param size the size of the directory
* @param ntHeader * @param validator the validator for the directory
* @throws IOException if an I/O error occurs * @throws IOException if an I/O error occurs
*/ */
public static DebugDirectoryParser createDebugDirectoryParser( public static DebugDirectoryParser createDebugDirectoryParser(

Some files were not shown because too many files have changed in this diff Show more