cprover
path_strategy_choosert Class Reference

Factory and information for path_storaget. More...

#include <path_storage.h>

Public Member Functions

 path_strategy_choosert ()
 
std::string show_strategies () const
 suitable for displaying as a front-end help message More...
 
bool is_valid_strategy (const std::string strategy) const
 is there a factory constructor for the named strategy? More...
 
std::unique_ptr< path_storagetget (const std::string strategy) const
 Factory for a path_storaget. More...
 
void set_path_strategy_options (const cmdlinet &, optionst &, messaget &) const
 add paths and exploration-strategy option, suitable to be invoked from front-ends. More...
 

Protected Member Functions

std::string default_strategy () const
 

Protected Attributes

std::map< const std::string, std::pair< const std::string, const std::function< std::unique_ptr< path_storaget >)> > > strategies
 Map from the name of a strategy (to be supplied on the command line), to the help text for that strategy and a factory thunk returning a pointer to a derived class of path_storaget that implements that strategy. More...
 

Detailed Description

Factory and information for path_storaget.

Definition at line 119 of file path_storage.h.

Constructor & Destructor Documentation

◆ path_strategy_choosert()

path_strategy_choosert::path_strategy_choosert ( )

Definition at line 106 of file path_storage.cpp.

Member Function Documentation

◆ default_strategy()

std::string path_strategy_choosert::default_strategy ( ) const
inlineprotected

Definition at line 151 of file path_storage.h.

Referenced by set_path_strategy_options().

◆ get()

std::unique_ptr<path_storaget> path_strategy_choosert::get ( const std::string  strategy) const
inline

Factory for a path_storaget.

Ensure that path_strategy_choosert::is_valid_strategy() returns true for a particular string before calling this function on that string.

Definition at line 137 of file path_storage.h.

References INVARIANT, and strategies.

Referenced by bmct::do_language_agnostic_bmc().

◆ is_valid_strategy()

bool path_strategy_choosert::is_valid_strategy ( const std::string  strategy) const
inline

is there a factory constructor for the named strategy?

Definition at line 128 of file path_storage.h.

References strategies.

Referenced by bmct::do_language_agnostic_bmc(), and set_path_strategy_options().

◆ set_path_strategy_options()

void path_strategy_choosert::set_path_strategy_options ( const cmdlinet cmdline,
optionst options,
messaget message 
) const

◆ show_strategies()

std::string path_strategy_choosert::show_strategies ( ) const

suitable for displaying as a front-end help message

Definition at line 75 of file path_storage.cpp.

References strategies.

Referenced by cbmc_parse_optionst::get_command_line_options(), and jbmc_parse_optionst::get_command_line_options().

Member Data Documentation

◆ strategies

std::map<const std::string, std::pair<const std::string, const std::function<std::unique_ptr<path_storaget>)> > > path_strategy_choosert::strategies
protected

Map from the name of a strategy (to be supplied on the command line), to the help text for that strategy and a factory thunk returning a pointer to a derived class of path_storaget that implements that strategy.

Definition at line 162 of file path_storage.h.

Referenced by get(), is_valid_strategy(), and show_strategies().


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