plugify  1.0.0.0
any.hpp
1 #pragma once
2 
3 #include <plugify/numerics.hpp>
4 #include <plugify/string.hpp>
5 #include <plugify/variant.hpp>
6 #include <plugify/vector.hpp>
7 
8 namespace plg {
9  struct invalid {};
10  struct none {};
11  union function { void* ptr; };
12 
21  using any = variant<
22  invalid,
23 
24  none,
25  bool,
26  char,
27  char16_t,
28  int8_t,
29  int16_t,
30  int32_t,
31  int64_t,
32  uint8_t,
33  uint16_t,
34  uint32_t,
35  uint64_t,
36  void*,
37  float,
38  double,
39  function,
40  string,
62  vec2,
63  vec3,
64  vec4
65  //mat4x4
66  >;
67 } // namespace plg
Represents an invalid type.
Definition: any.hpp:9
Represents the absence of a value.
Definition: any.hpp:10
Represents a function pointer as a union for flexibility.
Definition: any.hpp:11