decompiler  1.0.0
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
ghidra::ArchOption Class Referenceabstract

Base class for options classes that affect the configuration of the Architecture object. More...

#include <options.hh>

Inheritance diagram for ghidra::ArchOption:
ghidra::OptionAliasBlock ghidra::OptionAllowContextSet ghidra::OptionCommentHeader ghidra::OptionCommentIndent ghidra::OptionCommentInstruction ghidra::OptionCommentStyle ghidra::OptionConventionPrinting ghidra::OptionCurrentAction ghidra::OptionDefaultPrototype ghidra::OptionErrorReinterpreted ghidra::OptionErrorTooManyInstructions ghidra::OptionErrorUnimplemented ghidra::OptionExtraPop ghidra::OptionForLoops ghidra::OptionHideExtensions ghidra::OptionIgnoreUnimplemented ghidra::OptionIndentIncrement ghidra::OptionInferConstPtr ghidra::OptionInline ghidra::OptionInPlaceOps ghidra::OptionIntegerFormat ghidra::OptionJumpLoad ghidra::OptionJumpTableMax ghidra::OptionMaxInstruction ghidra::OptionMaxLineWidth ghidra::OptionNamespaceStrategy ghidra::OptionNoCastPrinting ghidra::OptionNoReturn ghidra::OptionNullPrinting ghidra::OptionProtoEval ghidra::OptionReadOnly ghidra::OptionSetAction ghidra::OptionSetLanguage ghidra::OptionSplitDatatypes ghidra::OptionStructAlign ghidra::OptionToggleRule ghidra::OptionWarning

Public Member Functions

string getName (void) const
 Return the name of the option.
 
virtual string apply (Architecture *glb, const string &p1, const string &p2, const string &p3) const =0
 Apply a particular configuration option to the Architecture. More...
 

Static Public Member Functions

static bool onOrOff (const string &p)
 Parse an "on" or "off" string. More...
 

Protected Attributes

string name
 Name of the option.
 

Detailed Description

Base class for options classes that affect the configuration of the Architecture object.

Each class instance affects configuration through its apply() method, which is handed the Architecture object to be configured along with string based parameters. The apply() methods are run once during initialization of the Architecture object.

Member Function Documentation

◆ apply()

virtual string ghidra::ArchOption::apply ( Architecture glb,
const string &  p1,
const string &  p2,
const string &  p3 
) const
pure virtual

Apply a particular configuration option to the Architecture.

This method is overloaded by the different Option classes to provide possible configuration of different parts of the Architecture. The user can provide up to three optional parameters to tailor a specific type of configuration. The method returns a confirmation/failure message as feedback.

Parameters
glbis the Architecture being configured
p1is the first optional configuration string
p2is the second optional configuration string
p3is the third optional configuration string
Returns
a confirmation/failure message

Implemented in ghidra::OptionSplitDatatypes, ghidra::OptionNamespaceStrategy, ghidra::OptionMaxInstruction, ghidra::OptionAliasBlock, ghidra::OptionToggleRule, ghidra::OptionJumpLoad, ghidra::OptionJumpTableMax, ghidra::OptionSetLanguage, ghidra::OptionProtoEval, ghidra::OptionErrorTooManyInstructions, ghidra::OptionErrorReinterpreted, ghidra::OptionErrorUnimplemented, ghidra::OptionIgnoreUnimplemented, ghidra::OptionAllowContextSet, ghidra::OptionCurrentAction, ghidra::OptionSetAction, ghidra::OptionIntegerFormat, ghidra::OptionCommentInstruction, ghidra::OptionCommentHeader, ghidra::OptionCommentStyle, ghidra::OptionCommentIndent, ghidra::OptionIndentIncrement, ghidra::OptionMaxLineWidth, ghidra::OptionHideExtensions, ghidra::OptionNoCastPrinting, ghidra::OptionConventionPrinting, ghidra::OptionInPlaceOps, ghidra::OptionNullPrinting, ghidra::OptionWarning, ghidra::OptionStructAlign, ghidra::OptionNoReturn, ghidra::OptionInline, ghidra::OptionForLoops, ghidra::OptionInferConstPtr, ghidra::OptionDefaultPrototype, ghidra::OptionReadOnly, and ghidra::OptionExtraPop.

Referenced by getName(), ghidra::OptionAliasBlock::OptionAliasBlock(), ghidra::OptionAllowContextSet::OptionAllowContextSet(), ghidra::OptionCommentHeader::OptionCommentHeader(), ghidra::OptionCommentIndent::OptionCommentIndent(), ghidra::OptionCommentInstruction::OptionCommentInstruction(), ghidra::OptionCommentStyle::OptionCommentStyle(), ghidra::OptionConventionPrinting::OptionConventionPrinting(), ghidra::OptionCurrentAction::OptionCurrentAction(), ghidra::OptionDefaultPrototype::OptionDefaultPrototype(), ghidra::OptionErrorReinterpreted::OptionErrorReinterpreted(), ghidra::OptionErrorTooManyInstructions::OptionErrorTooManyInstructions(), ghidra::OptionErrorUnimplemented::OptionErrorUnimplemented(), ghidra::OptionExtraPop::OptionExtraPop(), ghidra::OptionForLoops::OptionForLoops(), ghidra::OptionHideExtensions::OptionHideExtensions(), ghidra::OptionIgnoreUnimplemented::OptionIgnoreUnimplemented(), ghidra::OptionIndentIncrement::OptionIndentIncrement(), ghidra::OptionInferConstPtr::OptionInferConstPtr(), ghidra::OptionInline::OptionInline(), ghidra::OptionInPlaceOps::OptionInPlaceOps(), ghidra::OptionIntegerFormat::OptionIntegerFormat(), ghidra::OptionJumpLoad::OptionJumpLoad(), ghidra::OptionJumpTableMax::OptionJumpTableMax(), ghidra::OptionMaxInstruction::OptionMaxInstruction(), ghidra::OptionMaxLineWidth::OptionMaxLineWidth(), ghidra::OptionNamespaceStrategy::OptionNamespaceStrategy(), ghidra::OptionNoCastPrinting::OptionNoCastPrinting(), ghidra::OptionNoReturn::OptionNoReturn(), ghidra::OptionNullPrinting::OptionNullPrinting(), ghidra::OptionProtoEval::OptionProtoEval(), ghidra::OptionReadOnly::OptionReadOnly(), ghidra::OptionSetAction::OptionSetAction(), ghidra::OptionSetLanguage::OptionSetLanguage(), ghidra::OptionSplitDatatypes::OptionSplitDatatypes(), ghidra::OptionStructAlign::OptionStructAlign(), ghidra::OptionToggleRule::OptionToggleRule(), ghidra::OptionWarning::OptionWarning(), and ghidra::OptionDatabase::set().

◆ onOrOff()

bool ghidra::ArchOption::onOrOff ( const string &  p)
static

The documentation for this class was generated from the following files: