Zserio C++ runtime library  1.0.2
Built for Zserio 2.14.1
TypeInfoUtil.cpp
Go to the documentation of this file.
1 #include "zserio/TypeInfoUtil.h"
2 
3 namespace zserio
4 {
5 
7 {
8  switch (schemaType)
9  {
10  case SchemaType::STRUCT:
11  case SchemaType::CHOICE:
12  case SchemaType::UNION:
13  return true;
14  default:
15  return false;
16  }
17 }
18 
20 {
21  switch (cppType)
22  {
23  case CppType::STRUCT:
24  case CppType::CHOICE:
25  case CppType::UNION:
26  return true;
27  default:
28  return false;
29  }
30 }
31 
33 {
34  switch (schemaType)
35  {
36  case SchemaType::CHOICE:
37  case SchemaType::UNION:
38  return true;
39  default:
40  return false;
41  }
42 }
43 
45 {
46  switch (cppType)
47  {
48  case CppType::CHOICE:
49  case CppType::UNION:
50  return true;
51  default:
52  return false;
53  }
54 }
55 
57 {
58  switch (schemaType)
59  {
60  case SchemaType::BOOL:
61  case SchemaType::INT8:
62  case SchemaType::INT16:
63  case SchemaType::INT32:
64  case SchemaType::INT64:
65  case SchemaType::UINT8:
66  case SchemaType::UINT16:
67  case SchemaType::UINT32:
68  case SchemaType::UINT64:
74  return true;
75  default:
76  return false;
77  }
78 }
79 
81 {
82  switch (cppType)
83  {
84  case CppType::BOOL:
85  case CppType::INT8:
86  case CppType::INT16:
87  case CppType::INT32:
88  case CppType::INT64:
89  case CppType::UINT8:
90  case CppType::UINT16:
91  case CppType::UINT32:
92  case CppType::UINT64:
93  case CppType::FLOAT:
94  case CppType::DOUBLE:
95  return true;
96  default:
97  return false;
98  }
99 }
100 
102 {
103  switch (schemaType)
104  {
105  case SchemaType::BOOL:
106  case SchemaType::INT8:
107  case SchemaType::INT16:
108  case SchemaType::INT32:
109  case SchemaType::INT64:
110  case SchemaType::UINT8:
111  case SchemaType::UINT16:
112  case SchemaType::UINT32:
113  case SchemaType::UINT64:
117  case SchemaType::VARINT:
121  case SchemaType::VARUINT:
122  case SchemaType::VARSIZE:
127  return true;
128  default:
129  return false;
130  }
131 }
132 
134 {
135  switch (cppType)
136  {
137  case CppType::BOOL:
138  case CppType::INT8:
139  case CppType::INT16:
140  case CppType::INT32:
141  case CppType::INT64:
142  case CppType::UINT8:
143  case CppType::UINT16:
144  case CppType::UINT32:
145  case CppType::UINT64:
146  return true;
147  default:
148  return false;
149  }
150 }
151 
153 {
154  switch (schemaType)
155  {
156  case SchemaType::INT8:
157  case SchemaType::INT16:
158  case SchemaType::INT32:
159  case SchemaType::INT64:
163  case SchemaType::VARINT:
166  case SchemaType::FLOAT16:
167  case SchemaType::FLOAT32:
168  case SchemaType::FLOAT64:
169  return true;
170  default:
171  return false;
172  }
173 }
174 
176 {
177  switch (cppType)
178  {
179  case CppType::INT8:
180  case CppType::INT16:
181  case CppType::INT32:
182  case CppType::INT64:
183  case CppType::FLOAT:
184  case CppType::DOUBLE:
185  return true;
186  default:
187  return false;
188  }
189 }
190 
192 {
193  switch (schemaType)
194  {
195  case SchemaType::FLOAT16:
196  case SchemaType::FLOAT32:
197  case SchemaType::FLOAT64:
198  return true;
199  default:
200  return false;
201  }
202 }
203 
205 {
206  switch (cppType)
207  {
208  case CppType::FLOAT:
209  case CppType::DOUBLE:
210  return true;
211  default:
212  return false;
213  }
214 }
215 
216 } // namespace zserio
SchemaType
Definition: ITypeInfo.h:41
static bool hasChoice(SchemaType schemaType)
static bool isIntegral(SchemaType schemaType)
static bool isCompound(SchemaType schemaType)
Definition: TypeInfoUtil.cpp:6
static bool isSigned(SchemaType schemaType)
static bool isFloatingPoint(SchemaType schemaType)
static bool isFixedSize(SchemaType schemaType)