Struct data_type
boost::proto::data_type —
The type of proto::data, a key for use when creating
a transform environment that associates a piece of data with this type.
Synopsis
struct data_type {
template<typename Value> env<data_type, see-below> operator=(Value &) const;
template<typename Value>
env<data_type, see-below> operator=(Value const &) const;
};
Description
Тип<proto::data_type>, наряду с<proto::data>глобальным, объявляется с использованием макроса<BOOST_PROTO_DEFINE_ENV_VAR()>.
data_type public member functions
- <
template<typenameValue>
env<data_type,see-below>operator=(Value&value)const;
template<typenameValue>
env<data_type,see-below>operator=(Valueconst&value)const;
>Если<Value>является специализацией<boost::reference_wrapper<T>>, эта функция возвращается<env<data_type, T &>(value.get())>.
Кроме того, если тип<Value>не является копируемым (т.е. функция, массив, абстракт или поток), эта функция возвращает<env<data_type, Valuecv>& >(значение), где<cv><const>для второй перегрузки и пуста для первой.
В противном случае эта функция возвращается<env<data_type, Value>(value)>.