iceoryx2
C++ Language Bindings
Loading...
Searching...
No Matches
deprecation_marker.hpp File Reference

Go to the source code of this file.

Classes

struct  iox2::legacy::detail::DeprecationMarker
 

Namespaces

namespace  iox2
 
namespace  iox2::legacy
 
namespace  iox2::legacy::detail
 

Macros

#define ICEORYX_VERSION_MAJOR   0
 
#define IOX2_INTERNAL_NEXT_DEPRECATED_VERSION   3
 
#define IOX2_INTERNAL_DEPRECATED_STINGIFY_HELPER_EXPAMD(NUM)   #NUM
 
#define IOX2_INTERNAL_DEPRECATED_STINGIFY_HELPER(NUM)   IOX2_INTERNAL_DEPRECATED_STINGIFY_HELPER_EXPAMD(NUM)
 
#define IOX2_INTERNAL_DEPRECATED_HEADER_SINCE(VERSION, MESSAGE)
 
#define IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_V1(VERSION, MESSAGE)    IOX2_INTERNAL_DEPRECATED_HEADER_SINCE(VERSION, MESSAGE)
 
#define IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_V2(VERSION, MESSAGE)    IOX2_INTERNAL_DEPRECATED_HEADER_SINCE(VERSION, MESSAGE)
 
#define IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_V3(VERSION, MESSAGE)
 
#define IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_V4(VERSION, MESSAGE)
 
#define IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_EXPANSION(VERSION, MESSAGE)    IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_V##VERSION(VERSION, MESSAGE)
 
#define IOX2_DEPRECATED_HEADER_SINCE(VERSION, MESSAGE)   IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_EXPANSION(VERSION, MESSAGE)
 Macro to deprecate header depending on the iceoryx major version.
 
#define IOX2_INTERNAL_DEPRECATED_SINCE(VERSION, MESSAGE)    [[deprecated("Deprecated since v" #VERSION ".0 and will be removed at a later version! " MESSAGE)]]
 
#define IOX2_INTERNAL_DEPRECATED_SINCE_V1(VERSION, MESSAGE)   IOX2_INTERNAL_DEPRECATED_SINCE(VERSION, MESSAGE)
 
#define IOX2_INTERNAL_DEPRECATED_SINCE_V2(VERSION, MESSAGE)   IOX2_INTERNAL_DEPRECATED_SINCE(VERSION, MESSAGE)
 
#define IOX2_INTERNAL_DEPRECATED_SINCE_V3(VERSION, MESSAGE)
 
#define IOX2_INTERNAL_DEPRECATED_SINCE_V4(VERSION, MESSAGE)
 
#define IOX2_INTERNAL_DEPRECATED_SINCE_EXPANSION(VERSION, MESSAGE)    IOX2_INTERNAL_DEPRECATED_SINCE_V##VERSION(VERSION, MESSAGE)
 
#define IOX2_DEPRECATED_SINCE(VERSION, MESSAGE)   IOX2_INTERNAL_DEPRECATED_SINCE_EXPANSION(VERSION, MESSAGE)
 Macro to deprecate code depending on the iceoryx major version.
 

Macro Definition Documentation

◆ ICEORYX_VERSION_MAJOR

#define ICEORYX_VERSION_MAJOR   0

Definition at line 19 of file deprecation_marker.hpp.

◆ IOX2_DEPRECATED_HEADER_SINCE

#define IOX2_DEPRECATED_HEADER_SINCE (   VERSION,
  MESSAGE 
)    IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_EXPANSION(VERSION, MESSAGE)

Macro to deprecate header depending on the iceoryx major version.

Parameters
[in]VERSIONfrom when the header is deprecated
[in]MESSAGEcustom message to be printed after 'Deprecated since vX.0 and will be remove at a later version!'
// assuming this file is 'iox/bar/foo.hpp'
#include "iox2/legacy/foo.hpp"
IOX2_DEPRECATED_HEADER_SINCE(3, "Please use 'iox/foo.hpp' instead.")
#define IOX2_DEPRECATED_HEADER_SINCE(VERSION, MESSAGE)
Macro to deprecate header depending on the iceoryx major version.

Definition at line 100 of file deprecation_marker.hpp.

◆ IOX2_DEPRECATED_SINCE

#define IOX2_DEPRECATED_SINCE (   VERSION,
  MESSAGE 
)    IOX2_INTERNAL_DEPRECATED_SINCE_EXPANSION(VERSION, MESSAGE)

Macro to deprecate code depending on the iceoryx major version.

Parameters
[in]VERSIONfrom when the code is deprecated
[in]MESSAGEcustom message to be printed after 'Deprecated since vX and will be remove at a later version!'
IOX2_DEPRECATED_SINCE(3, "Please use 'iox2::legacy::foo' instead.") void bar() {}
#define IOX2_DEPRECATED_SINCE(VERSION, MESSAGE)
Macro to deprecate code depending on the iceoryx major version.

Definition at line 139 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_DEPRECATED_HEADER_SINCE

#define IOX2_INTERNAL_DEPRECATED_HEADER_SINCE (   VERSION,
  MESSAGE 
)
Value:
namespace iox2 { \
namespace legacy { \
namespace detail { \
namespace \
[[deprecated("Deprecated since v" #VERSION ".0 and will be removed at a later version! " MESSAGE)]] header { \
} \
using header::DeprecationMarker; \
} \
}
constexpr bool always_false_v
Helper value to bind a static_assert to a type.

Definition at line 53 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_EXPANSION

#define IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_EXPANSION (   VERSION,
  MESSAGE 
)     IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_V##VERSION(VERSION, MESSAGE)

Definition at line 89 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_V1

#define IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_V1 (   VERSION,
  MESSAGE 
)     IOX2_INTERNAL_DEPRECATED_HEADER_SINCE(VERSION, MESSAGE)

Definition at line 74 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_V2

#define IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_V2 (   VERSION,
  MESSAGE 
)     IOX2_INTERNAL_DEPRECATED_HEADER_SINCE(VERSION, MESSAGE)

Definition at line 77 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_V3

#define IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_V3 (   VERSION,
  MESSAGE 
)

Definition at line 80 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_V4

#define IOX2_INTERNAL_DEPRECATED_HEADER_SINCE_V4 (   VERSION,
  MESSAGE 
)

Definition at line 82 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_DEPRECATED_SINCE

#define IOX2_INTERNAL_DEPRECATED_SINCE (   VERSION,
  MESSAGE 
)     [[deprecated("Deprecated since v" #VERSION ".0 and will be removed at a later version! " MESSAGE)]]

Definition at line 107 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_DEPRECATED_SINCE_EXPANSION

#define IOX2_INTERNAL_DEPRECATED_SINCE_EXPANSION (   VERSION,
  MESSAGE 
)     IOX2_INTERNAL_DEPRECATED_SINCE_V##VERSION(VERSION, MESSAGE)

Definition at line 130 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_DEPRECATED_SINCE_V1

#define IOX2_INTERNAL_DEPRECATED_SINCE_V1 (   VERSION,
  MESSAGE 
)    IOX2_INTERNAL_DEPRECATED_SINCE(VERSION, MESSAGE)

Definition at line 117 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_DEPRECATED_SINCE_V2

#define IOX2_INTERNAL_DEPRECATED_SINCE_V2 (   VERSION,
  MESSAGE 
)    IOX2_INTERNAL_DEPRECATED_SINCE(VERSION, MESSAGE)

Definition at line 119 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_DEPRECATED_SINCE_V3

#define IOX2_INTERNAL_DEPRECATED_SINCE_V3 (   VERSION,
  MESSAGE 
)

Definition at line 121 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_DEPRECATED_SINCE_V4

#define IOX2_INTERNAL_DEPRECATED_SINCE_V4 (   VERSION,
  MESSAGE 
)

Definition at line 123 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_DEPRECATED_STINGIFY_HELPER

#define IOX2_INTERNAL_DEPRECATED_STINGIFY_HELPER (   NUM)    IOX2_INTERNAL_DEPRECATED_STINGIFY_HELPER_EXPAMD(NUM)

Definition at line 35 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_DEPRECATED_STINGIFY_HELPER_EXPAMD

#define IOX2_INTERNAL_DEPRECATED_STINGIFY_HELPER_EXPAMD (   NUM)    #NUM

Definition at line 34 of file deprecation_marker.hpp.

◆ IOX2_INTERNAL_NEXT_DEPRECATED_VERSION

#define IOX2_INTERNAL_NEXT_DEPRECATED_VERSION   3

Definition at line 32 of file deprecation_marker.hpp.