unwrap_reference 構造体テンプレート

struct op::unwrap_reference

unwrap_reference は、boost::reference_wrapper<> を逆ラップする PolymorphicFunctionObject である。

概要

// ヘッダ:<boost/xpressive/regex_actions.hpp>

struct unwrap_reference {
  // メンバクラス、構造体、共用体
  template<typename Sig>
  struct result {
  };
  template<typename This, typename Ref>
  struct result<This(Ref &)> {
    // 型
    typedef boost::unwrap_reference< Ref >::type & type;
  };
  template<typename This, typename Ref>
  struct result<This(Ref)> {
    // 型
    typedef boost::unwrap_reference< Ref >::type & type;
  };

  // 公開メンバ関数
  template<typename T> T & operator()(boost::reference_wrapper< T >) const;
};

説明

unwrap_reference 公開メンバ関数

template<typename T>
T &operator()(boost::reference_wrapper<T> r) const
パラメータ

r -- 逆ラップする boost::reference_wrapper<T>

戻り値

static_cast<T&>(r)