44 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			44 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|   | /////////////////////////////////////////////////////////////////////////////// | ||
|  | /// \file as_lvalue.hpp | ||
|  | /// Contains definition the as_lvalue() functions. | ||
|  | // | ||
|  | //  Copyright 2008 Eric Niebler. 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 BOOST_PROTO_TRANSFORM_AS_LVALUE_HPP_EAN_12_27_2007 | ||
|  | #define BOOST_PROTO_TRANSFORM_AS_LVALUE_HPP_EAN_12_27_2007 | ||
|  | 
 | ||
|  | #include <boost/proto/proto_fwd.hpp> | ||
|  | 
 | ||
|  | #if defined(_MSC_VER) | ||
|  | # pragma warning(push) | ||
|  | # pragma warning(disable : 4714) // function 'xxx' marked as __forceinline not inlined | ||
|  | #endif | ||
|  | 
 | ||
|  | namespace boost { namespace proto | ||
|  | { | ||
|  |     namespace detail | ||
|  |     { | ||
|  |         template<typename T> | ||
|  |         BOOST_FORCEINLINE | ||
|  |         T &as_lvalue(T &t) | ||
|  |         { | ||
|  |             return t; | ||
|  |         } | ||
|  | 
 | ||
|  |         template<typename T> | ||
|  |         BOOST_FORCEINLINE | ||
|  |         T const &as_lvalue(T const &t) | ||
|  |         { | ||
|  |             return t; | ||
|  |         } | ||
|  |     } | ||
|  | }} | ||
|  | 
 | ||
|  | #if defined(_MSC_VER) | ||
|  | # pragma warning(pop) | ||
|  | #endif | ||
|  | 
 | ||
|  | #endif |