1[/ 2 Copyright 2010 John Maddock. 3 Distributed under the Boost Software License, Version 1.0. 4 (See accompanying file LICENSE_1_0.txt or copy at 5 http://www.boost.org/LICENSE_1_0.txt). 6] 7 8[section:is_lvalue_reference is_lvalue_reference] 9 template <class T> 10 struct is_lvalue_reference : public __tof {}; 11 12__inherit If T is an lvalue reference type 13then inherits from __true_type, 14otherwise inherits from __false_type. 15 16__std_ref 3.9.2 and 8.3.2. 17 18__compat If the compiler does not 19support partial-specialization of class templates, 20then this template may report the wrong result for function types, 21and for types that are both const and volatile qualified. 22 23__header ` #include <boost/type_traits/is_lvalue_reference.hpp>` or ` #include <boost/type_traits.hpp>` 24 25__examples 26 27[:`is_lvalue_reference<int&>` inherits from `__true_type`.] 28 29[:`is_lvalue_reference<int const&>::type` is the type `__true_type`.] 30 31[:`is_lvalue_reference<int const&&>::type` is the type `__false_type`.] 32 33[:`is_lvalue_reference<int (&)(long)>::value` is an integral constant 34expression that evaluates to /true/ (the argument in this case is 35a reference to a function).] 36 37[:`is_lvalue_reference<T>::value_type` is the type `bool`.] 38 39[endsect] 40 41