iceoryx2
C++ Language Bindings
Loading...
Searching...
No Matches
type_name.hpp
Go to the documentation of this file.
1// Copyright (c) 2025 Contributors to the Eclipse Foundation
2//
3// See the NOTICE file(s) distributed with this work for additional
4// information regarding copyright ownership.
5//
6// This program and the accompanying materials are made available under the
7// terms of the Apache Software License 2.0 which is available at
8// https://www.apache.org/licenses/LICENSE-2.0, or the MIT license
9// which is available at https://opensource.org/licenses/MIT.
10//
11// SPDX-License-Identifier: Apache-2.0 OR MIT
12
13#ifndef IOX2_TYPE_NAME_HPP
14#define IOX2_TYPE_NAME_HPP
15
18
19namespace iox2 {
20
22
29template <typename T>
31
32} // namespace iox2
33
36// NOLINTNEXTLINE(cppcoreguidelines-macro-usage) : a function template cannot specialize from arbitrary scopes
37#define IOX2_DEFINE_TYPE_NAME(Type, NameExpr) \
38 template <> \
39 struct iox2::TypeNameSpecialization<Type> { \
40 static auto value() -> const char* { \
41 return (NameExpr); \
42 } \
43 }
44
45#endif