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)
>.