MathPlot
Macros | Typedefs
C++ compatibility helpers

Helper typedefs and macros that provide a single interface across C++14 and C++17-or-newer builds for optional values and Y-axis iteration helpers. More...

Macros

#define MP_OPTNULL_INT   -1
 Null sentinel used for mpOptional_int / mpOptional_uint in the fallback implementation.
 
#define MP_OPTTEST(opt)   ((opt) != -1)
 Test whether a fallback optional-style value contains a valid value.
 
#define MP_OPTGET(opt)   (opt)
 Get the contained value from a fallback optional-style value.
 
#define MP_LOOP_ITER   auto& elem
 Helper macro for iterating through axis maps without structured binding.
 
#define m_yID   elem.first
 Alias for the Y-axis identifier when structured binding is unavailable.
 
#define m_yData   elem.second
 Alias for the Y-axis data when structured binding is unavailable.
 

Typedefs

typedef unsigned int mpOptional_uint
 Optional unsigned integer fallback type used when std::optional is unavailable.
 
typedef int mpOptional_int
 Optional integer fallback type used when std::optional is unavailable.
 

Detailed Description

Helper typedefs and macros that provide a single interface across C++14 and C++17-or-newer builds for optional values and Y-axis iteration helpers.