BloombergLP::bdlb::Variant14::applyRaw

applyRaw overloads

Synopses

Declared in <bdlb_variant.h>

Apply the specified visitor to this modifiable variant by passing the value (of template parameter TYPE) this variant currently holds to the visitor object's operator(), and return the value returned by the visitor. The behavior is undefined if this variant is unset. Note that this method is selected only if the template parameter type VISITOR defines a typedef of ResultType in its public interface. Also note that this method is defined inline to work around a Windows compiler bug with SFINAE functions.

template<class VISITOR>
VISITOR::ResultType
applyRaw(VISITOR& visitor)
requires Variant_ReturnValueHelper<VISITOR>::value == 1;
» more...

Apply the specified visitor to this variant by passing the value this variant currently holds to the visitor object's operator(), and return the value (of template parameter RET_TYPE) returned by the visitor. The behavior is undefined if this variant is unset. Note that this method is selected only if the template parameter type VISITOR defines a typedef of ResultType in its public interface. Also note that this method is defined inline to work around a Windows compiler bug with SFINAE functions.

template<class VISITOR>
VISITOR::ResultType
applyRaw(VISITOR& visitor) const
requires Variant_ReturnValueHelper<VISITOR>::value == 1;
» more...

Apply the specified visitor to this modifiable variant by passing the value (of template parameter TYPE) this variant currently holds to the visitor object's operator(), and return the value returned by the visitor. The behavior is undefined if this variant is unset. Note that this method is selected only if the template parameter type VISITOR defines a typedef of ResultType in its public interface. Also note that this method is defined inline to work around a Windows compiler bug with SFINAE functions.

template<class VISITOR>
VISITOR::ResultType
applyRaw(VISITOR const& visitor)
requires Variant_ReturnValueHelper<VISITOR>::value == 1;
» more...

Apply the specified visitor to this variant by passing the value this variant currently holds to the visitor object's operator(), and return the value returned by the visitor. The behavior is undefined if this variant is unset. Note that this method is selected only if the template parameter type VISITOR defines a typedef of ResultType in its public interface. Also note that this method is defined inline to work around a Windows compiler bug with SFINAE functions.

template<class VISITOR>
VISITOR::ResultType
applyRaw(VISITOR const& visitor) const
requires Variant_ReturnValueHelper<VISITOR>::value == 1;
» more...

Apply the specified visitor to this modifiable variant by passing the value this variant currently holds to the visitor object's operator(), and return the value (of template parameter RET_TYPE) returned by the visitor. The behavior is undefined if this variant is unset.

template<
    class RET_TYPE,
    class VISITOR>
RET_TYPE
applyRaw(VISITOR& visitor);
» more...

Apply the specified visitor to this variant by passing the value this variant currently holds to the visitor object's operator(), and return the value (of template parameter RET_TYPE) returned by the visitor. The behavior is undefined if this variant is unset.

template<
    class RET_TYPE,
    class VISITOR>
RET_TYPE
applyRaw(VISITOR& visitor) const;
» more...

Same as the preceding overload, but for a const visitor.

template<
    class RET_TYPE,
    class VISITOR>
RET_TYPE
applyRaw(VISITOR const& visitor);
» more...

Same as the preceding overload, but for a const visitor.

template<
    class RET_TYPE,
    class VISITOR>
RET_TYPE
applyRaw(VISITOR const& visitor) const;
» more...