ezconfig
Create C++ Objects from Yaml and Json
Loading...
Searching...
No Matches
macro.hpp
1// Copyright (c) 2023 Petter Nilsson. MIT License. https://github.com/pettni/ezconfig
2
3#pragma once
4
5#include <functional>
6
7#define EZ_CONCATENATE_IMPL(s1, s2) s1##s2
8#define EZ_CONCATENATE(s1, s2) EZ_CONCATENATE_IMPL(s1, s2)
9#define EZ_ANONYMOUS_VARIABLE(str) EZ_CONCATENATE(str, __COUNTER__)
10#define EZ_STATIC_INVOKE(...) \
11 static bool EZ_ANONYMOUS_VARIABLE(invoked) = [] { return (std::invoke(__VA_ARGS__), true); }()