The Battle for Wesnoth  1.19.0-dev
Public Member Functions | Private Member Functions | Private Attributes | List of all members
wfl::safe_call_callable Class Reference

#include <callable_objects.hpp>

Inheritance diagram for wfl::safe_call_callable:

Public Member Functions

 safe_call_callable (const variant &main, const expression_ptr &backup)
 
const variantget_main () const
 
const expression_ptrget_backup () const
 
void set_backup_result (const variant &v)
 
variant execute_self (variant ctxt) override
 
- Public Member Functions inherited from wfl::formula_callable
 formula_callable (bool has_self=true)
 
virtual ~formula_callable ()
 
formula_callable_ptr fake_ptr ()
 
const_formula_callable_ptr fake_ptr () const
 
variant query_value (const std::string &key) const
 
void mutate_value (const std::string &key, const variant &value)
 
formula_input_vector inputs () const
 
bool equals (const formula_callable &other) const
 
bool less (const formula_callable &other) const
 
bool has_key (const std::string &key) const
 
void serialize (std::string &str) const
 
void subscribe_dtor (callable_die_subscriber *d) const
 
void unsubscribe_dtor (callable_die_subscriber *d) const
 

Private Member Functions

variant get_value (const std::string &key) const override
 
void get_inputs (formula_input_vector &inputs) const override
 

Private Attributes

variant main_
 
variant backup_
 
expression_ptr backup_formula_
 

Additional Inherited Members

- Protected Types inherited from wfl::formula_callable
enum  TYPE {
  FORMULA_C , TERRAIN_C , LOCATION_C , UNIT_TYPE_C ,
  UNIT_C , ATTACK_TYPE_C , MOVE_PARTIAL_C , MOVE_C ,
  ATTACK_C , MOVE_MAP_C
}
 
- Protected Member Functions inherited from wfl::formula_callable
virtual void set_value (const std::string &key, const variant &)
 
virtual int do_compare (const formula_callable *callable) const
 
virtual void serialize_to_string (std::string &) const
 
- Static Protected Member Functions inherited from wfl::formula_callable
template<typename T , typename K >
static variant convert_map (const std::map< T, K > &input_map)
 
template<typename T >
static variant convert_set (const std::set< T > &input_set)
 
template<typename T >
static variant convert_vector (const std::vector< T > &input_vector)
 
static void add_input (formula_input_vector &inputs, const std::string &key, formula_access access_type=formula_access::read_only)
 
- Protected Attributes inherited from wfl::formula_callable
TYPE type_
 
std::set< callable_die_subscriber * > dtor_notify
 

Detailed Description

Definition at line 215 of file callable_objects.hpp.

Constructor & Destructor Documentation

◆ safe_call_callable()

wfl::safe_call_callable::safe_call_callable ( const variant main,
const expression_ptr backup 
)
inline

Definition at line 219 of file callable_objects.hpp.

Member Function Documentation

◆ execute_self()

variant wfl::safe_call_callable::execute_self ( variant  ctxt)
overridevirtual

◆ get_backup()

const expression_ptr& wfl::safe_call_callable::get_backup ( ) const
inline

Definition at line 226 of file callable_objects.hpp.

References backup_formula_.

Referenced by execute_self().

◆ get_inputs()

void wfl::safe_call_callable::get_inputs ( formula_input_vector inputs) const
overrideprivatevirtual

◆ get_main()

const variant& wfl::safe_call_callable::get_main ( ) const
inline

Definition at line 225 of file callable_objects.hpp.

References main_.

◆ get_value()

variant wfl::safe_call_callable::get_value ( const std::string &  key) const
overrideprivatevirtual

Implements wfl::formula_callable.

Definition at line 837 of file callable_objects.cpp.

References backup_, and main_.

◆ set_backup_result()

void wfl::safe_call_callable::set_backup_result ( const variant v)
inline

Definition at line 228 of file callable_objects.hpp.

References backup_.

Member Data Documentation

◆ backup_

variant wfl::safe_call_callable::backup_
private

Definition at line 237 of file callable_objects.hpp.

Referenced by execute_self(), get_value(), and set_backup_result().

◆ backup_formula_

expression_ptr wfl::safe_call_callable::backup_formula_
private

Definition at line 238 of file callable_objects.hpp.

Referenced by get_backup().

◆ main_

variant wfl::safe_call_callable::main_
private

Definition at line 236 of file callable_objects.hpp.

Referenced by execute_self(), get_main(), and get_value().


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