// Copyright 2012 Pyry Jahkola.
//
// Distributed under the Boost Software License, Version 1.0. (See accompanying
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

#ifndef POLY_SELF_HPP_GP085EJ
#define POLY_SELF_HPP_GP085EJ

/// Header <poly/self.hpp>
/// ======================
///
/// Struct `poly::self`
/// -------------------
///
/// Placeholder type for `*this` in interface signatures. Combine with `&`,
/// `const &`, or `&&` as needed. (A plain `self` in the signature always
/// creates a copy of the respective argument.)
///
/// **See also.** `poly::interface<Signatures...>`

#include <poly/detail/self.hpp>

#endif // POLY_SELF_HPP_GP085EJ
