blob: 0c3cac22711d3c86a4592b12c6aaf5852e412866 [file] [log] [blame]
Vitaly Bukacbed2062015-08-17 12:54:05 -07001// Copyright (c) 2011 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef BASE_TEMPLATE_UTIL_H_
6#define BASE_TEMPLATE_UTIL_H_
7
Vitaly Buka8750b272015-08-18 18:39:08 -07008#include <type_traits>
Vitaly Bukacbed2062015-08-17 12:54:05 -07009
Alex Vakulenkof1fa8be2015-12-08 12:38:56 -080010#include "build/build_config.h"
Vitaly Bukacbed2062015-08-17 12:54:05 -070011
12namespace base {
13
Vitaly Buka8750b272015-08-18 18:39:08 -070014template <class T> struct is_non_const_reference : std::false_type {};
15template <class T> struct is_non_const_reference<T&> : std::true_type {};
16template <class T> struct is_non_const_reference<const T&> : std::false_type {};
Vitaly Bukacbed2062015-08-17 12:54:05 -070017
Vitaly Bukacbed2062015-08-17 12:54:05 -070018} // namespace base
19
20#endif // BASE_TEMPLATE_UTIL_H_