30 #include <boost/shared_ptr.hpp> 31 #include <boost/function/function1.hpp> 65 BOOST_THROW_EXCEPTION(except::NullTendril()
66 << except::diag_msg(
"creating sport with type")
67 << except::spore_typename(name_of<T>()));
104 return get()->
dirty();
109 return get()->
dirty(d);
136 return &(_p->get<T>());
142 return &(_p->get<
const T>());
154 return _p->get<
const T>();
173 BOOST_THROW_EXCEPTION(except::NullTendril());
184 BOOST_THROW_EXCEPTION(except::NullTendril()
185 << except::diag_msg(
"access via spore")
186 << except::spore_typename(name_of<T>()));
The spore is a typed handle for tendrils, making holding onto tendrils a bit easier.
Definition: spore.hpp:45
T & reference_type
Definition: spore.hpp:49
spore< T > & required(bool b)
Definition: spore.hpp:122
tendril_ptr tendril_
Definition: spore.hpp:190
spore< T > this_type
Definition: spore.hpp:47
const T * const_pointer_type
Definition: spore.hpp:51
const_pointer_type operator*() const
Definition: spore.hpp:151
boost::shared_ptr< const tendril > tendril_cptr
Definition: forward.hpp:36
Definition: parameters.hpp:11
spore< T > & set_doc(const std::string &doc)
Definition: spore.hpp:90
spore(tendril_ptr t)
Definition: spore.hpp:61
T value_type
Definition: spore.hpp:48
bool has_default() const
Definition: spore.hpp:117
boost::shared_ptr< tendril > tendril_ptr
Definition: forward.hpp:34
spore()
Definition: spore.hpp:55
const_pointer_type operator->() const
Definition: spore.hpp:139
bool dirty() const
Definition: spore.hpp:102
bool user_supplied() const
Definition: spore.hpp:112
void dirty(bool d)
Definition: spore.hpp:107
spore< T > & notify()
Definition: spore.hpp:84
pointer_type operator->()
Definition: spore.hpp:133
spore< T > & set_default_val(const T &val)
Definition: spore.hpp:96
reference_type operator*()
Definition: spore.hpp:145
bool required() const
Definition: spore.hpp:128
spore< T > & set_callback(typename boost::function1< void, T > cb)
Definition: spore.hpp:78
T * pointer_type
Definition: spore.hpp:50
tendril_ptr this_type::* unspecified_bool_type
Definition: spore.hpp:157