scenario_simulator_v2 C++ API
openscenario
openscenario_interpreter
include
openscenario_interpreter
type_traits
has_stream_output_operator.hpp
Go to the documentation of this file.
1
// Copyright 2015 TIER IV, Inc. All rights reserved.
2
//
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
6
//
7
// http://www.apache.org/licenses/LICENSE-2.0
8
//
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
14
15
#ifndef OPENSCENARIO_INTERPRETER__TYPE_TRAITS__HAS_STREAM_OUTPUT_OPERATOR_HPP_
16
#define OPENSCENARIO_INTERPRETER__TYPE_TRAITS__HAS_STREAM_OUTPUT_OPERATOR_HPP_
17
18
#include <iostream>
19
#include <
openscenario_interpreter/type_traits/void_t.hpp
>
20
21
namespace
openscenario_interpreter
22
{
23
inline
namespace
concepts
24
{
25
template
<
typename
T,
typename
=
void
>
26
struct
HasStreamOutputOperator
:
public
std::false_type
27
{
28
};
29
30
template
<
typename
T>
31
struct
HasStreamOutputOperator
<
32
T,
void_t
<decltype(
std
::declval<std::ostream &>() << std::declval<const T &>())>>
33
:
public
std::true_type
34
{
35
};
36
}
// namespace concepts
37
}
// namespace openscenario_interpreter
38
39
#endif
// OPENSCENARIO_INTERPRETER__TYPE_TRAITS__HAS_STREAM_OUTPUT_OPERATOR_HPP_
openscenario_interpreter::type_traits::void_t
void void_t
Definition:
void_t.hpp:25
openscenario_interpreter
Definition:
hypot.hpp:22
std
Definition:
cache.hpp:27
openscenario_interpreter::concepts::HasStreamOutputOperator
Definition:
has_stream_output_operator.hpp:27
void_t.hpp
Generated by
1.9.1