bmv2
Designing your own switch target with bmv2
Loading...
Searching...
No Matches
Public Member Functions | Static Private Attributes | List of all members
bm::TargetParserBasicWithDynModules Class Reference

#include <target_parser.h>

Inheritance diagram for bm::TargetParserBasicWithDynModules:
Inheritance graph
[legend]

Public Member Functions

int parse (const std::vector< std::string > &more_options, std::ostream *errstream) override
 
- Public Member Functions inherited from bm::TargetParserBasic
 TargetParserBasic ()
 Constructor.
 
void help_msg (std::ostream *outstream) const override
 See bm::TargetParserIface::help_msg.
 
ReturnCode add_string_option (const std::string &name, const std::string &help_str)
 
ReturnCode add_int_option (const std::string &name, const std::string &help_str)
 
ReturnCode add_uint_option (const std::string &name, const std::string &help_str)
 
ReturnCode add_flag_option (const std::string &name, const std::string &help_str)
 
ReturnCode get_string_option (const std::string &name, std::string *v) const
 
ReturnCode get_int_option (const std::string &name, int *v) const
 
ReturnCode get_uint_option (const std::string &name, unsigned int *v) const
 
ReturnCode get_flag_option (const std::string &name, bool *v) const
 

Static Private Attributes

static constexpr char load_modules_option [] = "load-modules"
 Name of the option.
 

Additional Inherited Members

- Public Types inherited from bm::TargetParserBasic
enum class  ReturnCode {
  SUCCESS = 0 , DUPLICATE_OPTION , INVALID_OPTION_NAME , OPTION_NOT_PROVIDED ,
  INVALID_OPTION_TYPE
}
 Return codes for this class. More...
 

Detailed Description

Same as TargetParserBasic but supports the '–load-modules' command-line option by default. This option is used to load shared objects dynamically at runtime. Often, these objects / modules contain new primtive action or extern definitions. If you plan on using '–load-modules' in your target, and you plan on providing primitive / extern definitions dynamically, you will need to link your executable with -rdynamic.

Member Function Documentation

◆ parse()

int bm::TargetParserBasicWithDynModules::parse ( const std::vector< std::string > &  more_options,
std::ostream *  errstream 
)
overridevirtual

See bm::TargetParserIface::parse. Make sure all possible options have been registered using add_string_option(), add_int_option(), add_uint_option() or add_flag_option().

Reimplemented from bm::TargetParserBasic.

Member Data Documentation

◆ load_modules_option

constexpr char bm::TargetParserBasicWithDynModules::load_modules_option[] = "load-modules"
staticconstexprprivate

Name of the option.


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