| Home | Libraries | People | FAQ | More

## Struct unwrap_reference

boost::xpressive::op::unwrap_reference — `unwrap_reference` is a PolymorphicFunctionObject for unwrapping a `boost::reference_wrapper<>`.

## Synopsis

    // In header: <boost/xpressive/regex_actions.hpp>

    struct unwrap_reference {
      // member classes/structs/unions
      template<typename Sig>
      struct result {
      };
      template<typename This, typename Ref>
      struct result<This(Ref &)> {
        // types
        typedef boost::unwrap_reference< Ref >::type & type;
      };
      template<typename This, typename Ref>
      struct result<This(Ref)> {
        // types
        typedef boost::unwrap_reference< Ref >::type & type;
      };

      // public member functions
      template<typename T> T & operator()(boost::reference_wrapper< T >) const;
    };

## Description

### `unwrap_reference` public member functions

1.     template<typename T> T & operator()(boost::reference_wrapper< T > r) const;

   Parameters: |

   `r` | The `boost::reference_wrapper<T>` to unwrap.

   Returns: | `static_cast<T &>(r)`