1 /*
2 * Copyright (c) 2025 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15 #include "ns_alltest.functiontest.impl.hpp"
16
17 #include <iostream>
18
19 #include "ns_alltest.functiontest.Color.proj.0.hpp"
20 #include "ns_alltest.functiontest.Data.proj.1.hpp"
21 #include "taihe/array.hpp"
22 #include "taihe/map.hpp"
23 #include "taihe/optional.hpp"
24 #include "taihe/runtime.hpp"
25 #include "taihe/string.hpp"
26
27 using namespace taihe;
28
29 namespace {
30 int g_testEnum {3};
31 int g_testInter {2};
32 int g_testIntAdd10 {10};
33 int g_testIntAdd100 {100};
34 int g_testIntAdd5 {5};
35
36 class TestNameSpace {
37 string testStr_ {"testNameSpace"};
38
39 public:
BaseFunctionTest43()40 void BaseFunctionTest43()
41 {
42 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
43 }
44
BaseFunctionTest44(int8_t param1)45 int8_t BaseFunctionTest44(int8_t param1)
46 {
47 // 检查结果是否超出 int8_t 的范围
48 int32_t result = static_cast<int32_t>(param1) + g_testIntAdd100;
49 if (result > INT8_MAX || result < INT8_MIN) {
50 taihe::set_error("BaseFunctionTest44: result exceeds int8_t range");
51 }
52 // 返回结果
53 return static_cast<int8_t>(result);
54 }
55
BaseFunctionTest45(int16_t param1)56 int16_t BaseFunctionTest45(int16_t param1)
57 {
58 // 检查结果是否超出 int16_t 的范围
59 int32_t result = static_cast<int32_t>(param1) * g_testIntAdd100;
60 if (result > INT16_MAX || result < INT16_MIN) {
61 taihe::set_error("BaseFunctionTest45: result exceeds int16_t range");
62 }
63 // 返回结果
64 return static_cast<int16_t>(result);
65 }
66
BaseFunctionTest46(int32_t param1)67 int32_t BaseFunctionTest46(int32_t param1)
68 {
69 // 检查结果是否超出 int32_t 的范围
70 int64_t result = static_cast<int64_t>(param1) * g_testIntAdd100;
71 std::cout << "NameSpaceImpl: " << __func__ << " result " << result << std::endl;
72 if (result > INT32_MAX || result < INT32_MIN) {
73 taihe::set_error("BaseFunctionTest18: result exceeds int32_t range");
74 }
75 // 返回结果
76 return static_cast<int32_t>(result);
77 }
78
BaseFunctionTest47(int64_t param1)79 int64_t BaseFunctionTest47(int64_t param1)
80 {
81 // 检查结果是否超出 int64_t 的范围
82 int64_t result = param1 * g_testIntAdd100;
83 std::cout << "NameSpaceImpl: " << __func__ << " result " << result << std::endl;
84 if (result > INT64_MAX || result < INT64_MIN) {
85 taihe::set_error("BaseFunctionTest19: result exceeds int64_t range");
86 }
87 // 返回结果
88 return static_cast<int64_t>(result);
89 }
90
BaseFunctionTest48(float param1)91 float BaseFunctionTest48(float param1)
92 {
93 int const baseFunctionTest48Value = 10;
94 return param1 - baseFunctionTest48Value;
95 }
96
BaseFunctionTest49(double param1)97 double BaseFunctionTest49(double param1)
98 {
99 return param1 - g_testIntAdd100;
100 }
101
BaseFunctionTest50(string_view param1)102 string BaseFunctionTest50(string_view param1)
103 {
104 return std::string(param1) + "BaseFunctionTest50";
105 }
106
BaseFunctionTest51(bool param1)107 bool BaseFunctionTest51(bool param1)
108 {
109 if (param1) {
110 return false;
111 } else {
112 return true;
113 }
114 }
115
BaseFunctionTest52(array_view<uint8_t> param1)116 array<uint8_t> BaseFunctionTest52(array_view<uint8_t> param1)
117 {
118 array<uint8_t> result = array<uint8_t>::make(param1.size());
119 for (std::size_t i = 0; i < param1.size(); i++) {
120 result[i] = param1[i] + g_testIntAdd10;
121 }
122 return result;
123 }
124
BaseFunctionTest53(optional_view<int8_t> param1)125 optional<int8_t> BaseFunctionTest53(optional_view<int8_t> param1)
126 {
127 if (param1) {
128 // 检查结果是否超出 int8_t 的范围
129 int32_t result = static_cast<int32_t>(*param1) - g_testIntAdd100;
130 std::cout << "NameSpaceImpl: " << __func__ << " result " << result << std::endl;
131 if (result > INT8_MAX || result < INT8_MIN) {
132 taihe::set_error("BaseFunctionTest53: result exceeds int8_t range");
133 }
134 // 返回结果
135 return optional<int8_t>::make(result);
136 } else {
137 std::cout << "NameSpaceImpl: " << __func__ << " param1 is null" << std::endl;
138 return optional<int8_t>(nullptr);
139 }
140 }
141
BaseFunctionTest54(optional_view<int32_t> param1)142 optional<int32_t> BaseFunctionTest54(optional_view<int32_t> param1)
143 {
144 if (param1) {
145 // 检查结果是否超出 int32_t 的范围
146 int32_t result = static_cast<int32_t>(*param1) - g_testIntAdd100;
147 std::cout << "NameSpaceImpl: " << __func__ << " result " << result << std::endl;
148 if (result > INT32_MAX || result < INT32_MIN) {
149 taihe::set_error("BaseFunctionTest54: result exceeds int32_t range");
150 }
151 // 返回结果
152 return optional<int32_t>::make(result);
153 } else {
154 std::cout << "NameSpaceImpl: " << __func__ << " param1 is null" << std::endl;
155 return optional<int32_t>(nullptr);
156 }
157 }
158
BaseFunctionTest55(map_view<int16_t,::ns_alltest::functiontest::Data> param1)159 map<int16_t, ::ns_alltest::functiontest::Data> BaseFunctionTest55(
160 map_view<int16_t, ::ns_alltest::functiontest::Data> param1)
161 {
162 map<int16_t, ::ns_alltest::functiontest::Data> m;
163 for (auto const &[key, value] : param1) {
164 m.emplace(key, value);
165 }
166 return m;
167 }
168
BaseFunctionTest56(int32_t param1)169 int64_t BaseFunctionTest56(int32_t param1)
170 {
171 int64_t result = static_cast<int64_t>(param1) * g_testIntAdd100;
172 return result;
173 }
174
BaseFunctionTest57(int8_t param1)175 int32_t BaseFunctionTest57(int8_t param1)
176 {
177 int32_t result = static_cast<int32_t>(param1) * g_testIntAdd100;
178 return result;
179 }
180
getTestStr()181 string getTestStr()
182 {
183 std::cout << "NameSpaceImpl: " << __func__ << " " << testStr_ << std::endl;
184 return testStr_;
185 }
186
BaseFunctionTest58(bool param1)187 ::ns_alltest::functiontest::ErrorResponse BaseFunctionTest58(bool param1)
188 {
189 if (param1) {
190 return {param1, 10000, "test58"};
191 } else {
192 return {false, static_cast<int16_t>(g_testIntAdd100), std::string("test581")};
193 }
194 }
195 };
196
197 class TestInterfacePerformance1 {
198 int testIntAdd5 {5};
199 int testIntAdd10 {10};
200
201 public:
BasePerformanceFunctionTest1()202 void BasePerformanceFunctionTest1()
203 {
204 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
205 }
206
BasePerformanceFunctionTest2(int8_t param1)207 int8_t BasePerformanceFunctionTest2(int8_t param1)
208 {
209 return (param1 + testIntAdd5) / testIntAdd10;
210 }
211 };
212
213 class TestInterfacePerformance2 {
214 int testIntAdd5 {5};
215 int testIntAdd10 {10};
216
217 public:
BasePerformanceFunctionTest1()218 void BasePerformanceFunctionTest1()
219 {
220 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
221 }
222
BasePerformanceFunctionTest2(int8_t param1)223 int8_t BasePerformanceFunctionTest2(int8_t param1)
224 {
225 return (param1 + testIntAdd5) / testIntAdd10;
226 }
227 };
228
229 class TestInterfacePerformance3 {
230 int testIntAdd5 {5};
231 int testIntAdd10 {10};
232
233 public:
BasePerformanceFunctionTest1()234 void BasePerformanceFunctionTest1()
235 {
236 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
237 }
238
BasePerformanceFunctionTest2(int8_t param1)239 int8_t BasePerformanceFunctionTest2(int8_t param1)
240 {
241 return (param1 + testIntAdd5) / testIntAdd10;
242 }
243 };
244
245 class TestInterfacePerformance4 {
246 int testIntAdd5 {5};
247 int testIntAdd10 {10};
248
249 public:
BasePerformanceFunctionTest1()250 void BasePerformanceFunctionTest1()
251 {
252 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
253 }
254
BasePerformanceFunctionTest2(int8_t param1)255 int8_t BasePerformanceFunctionTest2(int8_t param1)
256 {
257 return (param1 + testIntAdd5) / testIntAdd10;
258 }
259 };
260
261 class TestInterfacePerformance5 {
262 int testIntAdd5 {5};
263 int testIntAdd10 {10};
264
265 public:
BasePerformanceFunctionTest1()266 void BasePerformanceFunctionTest1()
267 {
268 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
269 }
270
BasePerformanceFunctionTest2(int8_t param1)271 int8_t BasePerformanceFunctionTest2(int8_t param1)
272 {
273 return (param1 + testIntAdd5) / testIntAdd10;
274 }
275 };
276
277 class TestInterfacePerformance6 {
278 int testIntAdd5 {5};
279 int testIntAdd10 {10};
280
281 public:
BasePerformanceFunctionTest1()282 void BasePerformanceFunctionTest1()
283 {
284 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
285 }
286
BasePerformanceFunctionTest2(int8_t param1)287 int8_t BasePerformanceFunctionTest2(int8_t param1)
288 {
289 return (param1 + testIntAdd5) / testIntAdd10;
290 }
291 };
292
293 class TestInterfacePerformance7 {
294 int testIntAdd5 {5};
295 int testIntAdd10 {10};
296
297 public:
BasePerformanceFunctionTest1()298 void BasePerformanceFunctionTest1()
299 {
300 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
301 }
302
BasePerformanceFunctionTest2(int8_t param1)303 int8_t BasePerformanceFunctionTest2(int8_t param1)
304 {
305 return (param1 + testIntAdd5) / testIntAdd10;
306 }
307 };
308
309 class TestInterfacePerformance8 {
310 int testIntAdd5 {5};
311 int testIntAdd10 {10};
312
313 public:
BasePerformanceFunctionTest1()314 void BasePerformanceFunctionTest1()
315 {
316 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
317 }
318
BasePerformanceFunctionTest2(int8_t param1)319 int8_t BasePerformanceFunctionTest2(int8_t param1)
320 {
321 return (param1 + testIntAdd5) / testIntAdd10;
322 }
323 };
324
325 class TestInterfacePerformance9 {
326 int testIntAdd5 {5};
327 int testIntAdd10 {10};
328
329 public:
BasePerformanceFunctionTest1()330 void BasePerformanceFunctionTest1()
331 {
332 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
333 }
334
BasePerformanceFunctionTest2(int8_t param1)335 int8_t BasePerformanceFunctionTest2(int8_t param1)
336 {
337 return (param1 + testIntAdd5) / testIntAdd10;
338 }
339 };
340
341 class TestInterfacePerformance10 {
342 int testIntAdd5 {5};
343 int testIntAdd10 {10};
344
345 public:
BasePerformanceFunctionTest1()346 void BasePerformanceFunctionTest1()
347 {
348 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
349 }
350
BasePerformanceFunctionTest2(int8_t param1)351 int8_t BasePerformanceFunctionTest2(int8_t param1)
352 {
353 return (param1 + testIntAdd5) / testIntAdd10;
354 }
355 };
356
357 class TestInterfacePerformance11 {
358 int testIntAdd5 {5};
359 int testIntAdd10 {10};
360
361 public:
BasePerformanceFunctionTest1()362 void BasePerformanceFunctionTest1()
363 {
364 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
365 }
366
BasePerformanceFunctionTest2(int8_t param1)367 int8_t BasePerformanceFunctionTest2(int8_t param1)
368 {
369 return (param1 + testIntAdd5) / testIntAdd10;
370 }
371 };
372
373 class TestInterfacePerformance12 {
374 int testIntAdd5 {5};
375 int testIntAdd10 {10};
376
377 public:
BasePerformanceFunctionTest1()378 void BasePerformanceFunctionTest1()
379 {
380 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
381 }
382
BasePerformanceFunctionTest2(int8_t param1)383 int8_t BasePerformanceFunctionTest2(int8_t param1)
384 {
385 return (param1 + testIntAdd5) / testIntAdd10;
386 }
387 };
388
389 class TestInterfacePerformance13 {
390 int testIntAdd5 {5};
391 int testIntAdd10 {10};
392
393 public:
BasePerformanceFunctionTest1()394 void BasePerformanceFunctionTest1()
395 {
396 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
397 }
398
BasePerformanceFunctionTest2(int8_t param1)399 int8_t BasePerformanceFunctionTest2(int8_t param1)
400 {
401 return (param1 + testIntAdd5) / testIntAdd10;
402 }
403 };
404
405 class TestInterfacePerformance14 {
406 int testIntAdd5 {5};
407 int testIntAdd10 {10};
408
409 public:
BasePerformanceFunctionTest1()410 void BasePerformanceFunctionTest1()
411 {
412 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
413 }
414
BasePerformanceFunctionTest2(int8_t param1)415 int8_t BasePerformanceFunctionTest2(int8_t param1)
416 {
417 return (param1 + testIntAdd5) / testIntAdd10;
418 }
419 };
420
421 class TestInterfacePerformance15 {
422 int testIntAdd5 {5};
423 int testIntAdd10 {10};
424
425 public:
BasePerformanceFunctionTest1()426 void BasePerformanceFunctionTest1()
427 {
428 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
429 }
430
BasePerformanceFunctionTest2(int8_t param1)431 int8_t BasePerformanceFunctionTest2(int8_t param1)
432 {
433 return (param1 + testIntAdd5) / testIntAdd10;
434 }
435 };
436
437 class TestInterfacePerformance16 {
438 int testIntAdd5 {5};
439 int testIntAdd10 {10};
440
441 public:
BasePerformanceFunctionTest1()442 void BasePerformanceFunctionTest1()
443 {
444 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
445 }
446
BasePerformanceFunctionTest2(int8_t param1)447 int8_t BasePerformanceFunctionTest2(int8_t param1)
448 {
449 return (param1 + testIntAdd5) / testIntAdd10;
450 }
451 };
452
453 class TestInterfacePerformance17 {
454 int testIntAdd5 {5};
455 int testIntAdd10 {10};
456
457 public:
BasePerformanceFunctionTest1()458 void BasePerformanceFunctionTest1()
459 {
460 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
461 }
462
BasePerformanceFunctionTest2(int8_t param1)463 int8_t BasePerformanceFunctionTest2(int8_t param1)
464 {
465 return (param1 + testIntAdd5) / testIntAdd10;
466 }
467 };
468
469 class TestInterfacePerformance18 {
470 int testIntAdd5 {5};
471 int testIntAdd10 {10};
472
473 public:
BasePerformanceFunctionTest1()474 void BasePerformanceFunctionTest1()
475 {
476 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
477 }
478
BasePerformanceFunctionTest2(int8_t param1)479 int8_t BasePerformanceFunctionTest2(int8_t param1)
480 {
481 return (param1 + testIntAdd5) / testIntAdd10;
482 }
483 };
484
485 class TestInterfacePerformance19 {
486 int testIntAdd5 {5};
487 int testIntAdd10 {10};
488
489 public:
BasePerformanceFunctionTest1()490 void BasePerformanceFunctionTest1()
491 {
492 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
493 }
494
BasePerformanceFunctionTest2(int8_t param1)495 int8_t BasePerformanceFunctionTest2(int8_t param1)
496 {
497 return (param1 + testIntAdd5) / testIntAdd10;
498 }
499 };
500
501 class TestInterfacePerformance20 {
502 int testIntAdd5 {5};
503 int testIntAdd10 {10};
504
505 public:
BasePerformanceFunctionTest1()506 void BasePerformanceFunctionTest1()
507 {
508 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
509 }
510
BasePerformanceFunctionTest2(int8_t param1)511 int8_t BasePerformanceFunctionTest2(int8_t param1)
512 {
513 return (param1 + testIntAdd5) / testIntAdd10;
514 }
515 };
516
517 class TestInterfacePerformance21 {
518 public:
TestInterfacePerformance21()519 TestInterfacePerformance21()
520 {
521 // Don't forget to implement the constructor.
522 }
523
geti32_test()524 int32_t geti32_test()
525 {
526 return INT32_MAX;
527 }
528
getStruct_test()529 ::ns_alltest::functiontest::Data getStruct_test()
530 {
531 return {"testStruct", false, INT32_MIN};
532 }
533
BasePerformanceFunctionTest2(int8_t param1)534 int8_t BasePerformanceFunctionTest2(int8_t param1)
535 {
536 // 检查结果是否超出 int8_t 的范围
537 int32_t result = static_cast<int32_t>(param1) + g_testIntAdd100;
538 if (result > INT8_MAX || result < INT8_MIN) {
539 taihe::set_error("BasePerformanceFunctionTest2: result exceeds int8_t range");
540 }
541 // 返回结果
542 return static_cast<int8_t>(result);
543 }
544
geti8_test_attribute()545 int8_t geti8_test_attribute()
546 {
547 return INT8_MAX;
548 }
549
geti16_test_attribute()550 int16_t geti16_test_attribute()
551 {
552 return INT16_MAX;
553 }
554
geti32_test_attribute()555 int32_t geti32_test_attribute()
556 {
557 return INT32_MAX;
558 }
559
geti64_test_attribute()560 int64_t geti64_test_attribute()
561 {
562 return INT64_MAX;
563 }
564
getf32_test_attribute()565 float getf32_test_attribute()
566 {
567 float const getf32TestAttributeRes = 3.14;
568 return getf32TestAttributeRes;
569 }
570
getf64_test_attribute()571 double getf64_test_attribute()
572 {
573 double const getf64TestAttributeRes = -1.23;
574 return getf64TestAttributeRes;
575 }
576
getStr_test_attribute()577 string getStr_test_attribute()
578 {
579 return "TESTSTR";
580 }
581
getbool_test_attribute()582 bool getbool_test_attribute()
583 {
584 return false;
585 }
586
get_ArrayBuffer_test_attribute()587 array<uint8_t> get_ArrayBuffer_test_attribute()
588 {
589 array<uint8_t> result = array<uint8_t>::make(g_testIntAdd10);
590 std::fill(result.begin(), result.end(), g_testIntAdd10);
591 return result;
592 }
593
getOptional_test_attribute()594 optional<int32_t> getOptional_test_attribute()
595 {
596 int32_t const baseNum = 1000;
597 int32_t result = baseNum + g_testIntAdd10;
598 if (result > INT32_MAX || result < INT32_MIN) {
599 taihe::set_error("getOptional_test_attribute: result exceeds int32_t range");
600 }
601 return optional<int32_t>::make(result);
602 }
603
getRecord_test_attribute()604 map<int32_t, ::ns_alltest::functiontest::Data> getRecord_test_attribute()
605 {
606 map<int32_t, ::ns_alltest::functiontest::Data> result;
607 ::ns_alltest::functiontest::Data p1 {
608 .data1 = "one",
609 .data2 = true,
610 .data3 = 100,
611 };
612 int32_t const getRecordTestAttributeKey1 = 100;
613 result.emplace(getRecordTestAttributeKey1, p1);
614 ::ns_alltest::functiontest::Data p2 {
615 .data1 = "two",
616 .data2 = false,
617 .data3 = 101,
618 };
619 int32_t const getRecordTestAttributeKey2 = 101;
620 result.emplace(getRecordTestAttributeKey2, p2);
621 return result;
622 }
623
getUnion_test_attribute()624 ::ns_alltest::functiontest::TestUnionName getUnion_test_attribute()
625 {
626 return ::ns_alltest::functiontest::TestUnionName::make_value1(g_testIntAdd100);
627 }
628
getArray_test_attribute()629 array<bool> getArray_test_attribute()
630 {
631 return array<bool>::make(1, true);
632 }
633
getEnum_test_attribute()634 ::ns_alltest::functiontest::Color getEnum_test_attribute()
635 {
636 return ::ns_alltest::functiontest::Color::key_t::GREEN;
637 }
638 };
639
640 class IbaseInterface1 {
641 public:
IbaseInterface1()642 IbaseInterface1()
643 {
644 // Don't forget to implement the constructor.
645 }
646
BaseTest()647 int32_t BaseTest()
648 {
649 return INT32_MIN;
650 }
651 };
652
653 class IbaseInterface2 {
654 public:
IbaseInterface2()655 IbaseInterface2()
656 {
657 // Don't forget to implement the constructor.
658 }
659
BaseTest1()660 string BaseTest1()
661 {
662 return "TestInterface";
663 }
664
BaseTest()665 int32_t BaseTest()
666 {
667 return INT32_MIN;
668 }
669 };
670
671 class IbaseInterface3 {
672 public:
IbaseInterface3()673 IbaseInterface3()
674 {
675 // Don't forget to implement the constructor.
676 }
677
BaseTest2()678 bool BaseTest2()
679 {
680 return true;
681 }
682
BaseTest()683 int32_t BaseTest()
684 {
685 return INT32_MAX;
686 }
687 };
688
BaseFunctionTest1()689 void BaseFunctionTest1()
690 {
691 std::cout << "NameSpaceImpl: " << __func__ << " is true " << std::endl;
692 }
693
BaseFunctionTest2(int8_t param1)694 void BaseFunctionTest2(int8_t param1)
695 {
696 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << static_cast<int>(param1) << std::endl;
697 }
698
BaseFunctionTest3(int16_t param1)699 void BaseFunctionTest3(int16_t param1)
700 {
701 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << param1 << std::endl;
702 }
703
BaseFunctionTest4(int32_t param1)704 void BaseFunctionTest4(int32_t param1)
705 {
706 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << param1 << std::endl;
707 }
708
BaseFunctionTest5(int64_t param1)709 void BaseFunctionTest5(int64_t param1)
710 {
711 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << param1 << std::endl;
712 }
713
BaseFunctionTest6(float param1)714 void BaseFunctionTest6(float param1)
715 {
716 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << param1 << std::endl;
717 }
718
BaseFunctionTest7(double param1)719 void BaseFunctionTest7(double param1)
720 {
721 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << param1 << std::endl;
722 }
723
BaseFunctionTest8(string_view param1)724 void BaseFunctionTest8(string_view param1)
725 {
726 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << param1 << std::endl;
727 }
728
BaseFunctionTest9(bool param1)729 void BaseFunctionTest9(bool param1)
730 {
731 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << param1 << std::endl;
732 }
733
BaseFunctionTest10(array_view<int8_t> param1)734 void BaseFunctionTest10(array_view<int8_t> param1)
735 {
736 // 输出 param1 的内容
737 std::cout << "NameSpaceImpl: " << __func__ << " param1 ";
738 for (int8_t value : param1) {
739 std::cout << static_cast<int>(value) << " ";
740 }
741 std::cout << std::endl;
742 }
743
BaseFunctionTest11(array_view<int16_t> param1)744 void BaseFunctionTest11(array_view<int16_t> param1)
745 {
746 // 输出 param1 的内容
747 std::cout << "NameSpaceImpl: " << __func__ << " param1 ";
748 for (int16_t value : param1) {
749 std::cout << value << " ";
750 }
751 std::cout << std::endl;
752 }
753
BaseFunctionTest12(optional_view<int16_t> param1)754 void BaseFunctionTest12(optional_view<int16_t> param1)
755 {
756 if (param1) {
757 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << *param1 << std::endl;
758 } else {
759 std::cout << "NameSpaceImpl: " << __func__ << " param1 is null" << std::endl;
760 }
761 }
762
BaseFunctionTest13(optional_view<int64_t> param1)763 void BaseFunctionTest13(optional_view<int64_t> param1)
764 {
765 if (param1) {
766 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << *param1 << std::endl;
767 } else {
768 std::cout << "NameSpaceImpl: " << __func__ << " param1 is null" << std::endl;
769 }
770 }
771
BaseFunctionTest14(array_view<uint8_t> param1)772 void BaseFunctionTest14(array_view<uint8_t> param1)
773 {
774 // 输出 param1 的内容
775 std::cout << "NameSpaceImpl: " << __func__ << " param1 ";
776 for (int16_t value : param1) {
777 std::cout << value << " ";
778 }
779 std::cout << std::endl;
780 }
781
BaseFunctionTest15(map_view<string,int32_t> param1)782 void BaseFunctionTest15(map_view<string, int32_t> param1)
783 {
784 std::cout << "NameSpaceImpl: " << __func__ << " param1 contents:" << std::endl;
785 // 遍历 map_view 并输出 key 和 value
786 for (auto const &pair : param1) {
787 std::cout << " Key: " << pair.first << ", Value: " << pair.second << std::endl;
788 }
789 }
790
BaseFunctionTest16(int8_t param1)791 int8_t BaseFunctionTest16(int8_t param1)
792 {
793 // 检查结果是否超出 int8_t 的范围
794 int32_t result = param1 + g_testIntAdd10;
795 if (result > INT8_MAX || result < INT8_MIN) {
796 taihe::set_error("BaseFunctionTest16: result exceeds int8_t range");
797 }
798 // 返回结果
799 return static_cast<int8_t>(result);
800 }
801
BaseFunctionTest17(int16_t param1)802 int16_t BaseFunctionTest17(int16_t param1)
803 {
804 // 检查结果是否超出 int16_t 的范围
805 int32_t result = param1 * g_testIntAdd10;
806 if (result > INT16_MAX || result < INT16_MIN) {
807 taihe::set_error("BaseFunctionTest17: result exceeds int16_t range");
808 }
809 // 返回结果
810 return static_cast<int16_t>(result);
811 }
812
BaseFunctionTest18(int32_t param1)813 int32_t BaseFunctionTest18(int32_t param1)
814 {
815 // 检查结果是否超出 int32_t 的范围
816 int64_t result = static_cast<int64_t>(param1) * g_testIntAdd100;
817 std::cout << "NameSpaceImpl: " << __func__ << " result " << result << std::endl;
818 if (result > INT32_MAX || result < INT32_MIN) {
819 taihe::set_error("BaseFunctionTest18: result exceeds int32_t range");
820 }
821 // 返回结果
822 return static_cast<int32_t>(result);
823 }
824
BaseFunctionTest19(int64_t param1)825 int64_t BaseFunctionTest19(int64_t param1)
826 {
827 // 检查结果是否超出 int64_t 的范围
828 int64_t result = param1 * g_testIntAdd10;
829 std::cout << "NameSpaceImpl: " << __func__ << " result " << result << std::endl;
830 if (result > INT64_MAX || result < INT64_MIN) {
831 taihe::set_error("BaseFunctionTest19: result exceeds int64_t range");
832 }
833 // 返回结果
834 return static_cast<int64_t>(result);
835 }
836
BaseFunctionTest20(float param1)837 float BaseFunctionTest20(float param1)
838 {
839 return param1 + g_testIntAdd100;
840 }
841
BaseFunctionTest21(double param1)842 double BaseFunctionTest21(double param1)
843 {
844 double const baseFunctionTest21Value = 1.01;
845 return param1 + baseFunctionTest21Value;
846 }
847
BaseFunctionTest22(string_view param1)848 string BaseFunctionTest22(string_view param1)
849 {
850 if (param1 == "BaseFunctionTest22") {
851 return std::string(param1) + "hello ani";
852 } else {
853 return param1;
854 }
855 }
856
BaseFunctionTest23(bool param1)857 bool BaseFunctionTest23(bool param1)
858 {
859 if (param1) {
860 return false;
861 } else {
862 return true;
863 }
864 }
865
BaseFunctionTest24(array_view<int8_t> param1)866 array<int8_t> BaseFunctionTest24(array_view<int8_t> param1)
867 {
868 array<int8_t> result = array<int8_t>::make(param1.size());
869 for (std::size_t i = 0; i < param1.size(); i++) {
870 result[i] = param1[i] * g_testInter;
871 }
872 return result;
873 }
874
BaseFunctionTest25(array_view<int16_t> param1)875 array<int16_t> BaseFunctionTest25(array_view<int16_t> param1)
876 {
877 array<int16_t> result = array<int16_t>::make(param1.size());
878 for (std::size_t i = 0; i < param1.size(); i++) {
879 result[i] = param1[i] + g_testInter;
880 }
881 return result;
882 }
883
BaseFunctionTest26(optional_view<int16_t> param1)884 optional<int16_t> BaseFunctionTest26(optional_view<int16_t> param1)
885 {
886 if (param1) {
887 // 检查结果是否超出 int16_t 的范围
888 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << *param1 << std::endl;
889 int32_t result = static_cast<int32_t>(*param1) + g_testIntAdd10;
890 std::cout << "NameSpaceImpl: " << __func__ << " result " << result << std::endl;
891 if (result > INT16_MAX || result < INT16_MIN) {
892 taihe::set_error("BaseFunctionTest26: result exceeds int16_t range");
893 }
894 // 返回结果
895 return optional<int16_t>::make(result);
896 } else {
897 std::cout << "NameSpaceImpl: " << __func__ << " param1 is null" << std::endl;
898 return optional<int16_t>(nullptr);
899 }
900 }
901
BaseFunctionTest27(optional_view<int64_t> param1)902 optional<int64_t> BaseFunctionTest27(optional_view<int64_t> param1)
903 {
904 if (param1) {
905 // 检查结果是否超出 int64_t 的范围
906 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << *param1 << std::endl;
907 int64_t result = *param1 + g_testIntAdd10;
908 if (result > INT64_MAX || result < INT64_MIN) {
909 taihe::set_error("BaseFunctionTest27: result exceeds int16_t range");
910 }
911 // 返回结果
912 return optional<int64_t>::make(result);
913 } else {
914 std::cout << "NameSpaceImpl: " << __func__ << " param1 is null" << std::endl;
915 return optional<int64_t>(nullptr);
916 }
917 }
918
BaseFunctionTest28(array_view<uint8_t> param1)919 array<uint8_t> BaseFunctionTest28(array_view<uint8_t> param1)
920 {
921 array<uint8_t> result = array<uint8_t>::make(param1.size());
922 for (std::size_t i = 0; i < param1.size(); i++) {
923 result[i] = param1[i] * g_testIntAdd10;
924 }
925 return result;
926 }
927
BaseFunctionTest29(map_view<string,int32_t> param1)928 map<string, int32_t> BaseFunctionTest29(map_view<string, int32_t> param1)
929 {
930 map<string, int32_t> m;
931 for (std::size_t i = 0; i < param1.size(); ++i) {
932 m.emplace("test" + std::to_string(i), g_testIntAdd10 + static_cast<int32_t>(i));
933 }
934 return m;
935 }
936
BaseFunctionTest30(::ns_alltest::functiontest::Color param1)937 ::ns_alltest::functiontest::Color BaseFunctionTest30(::ns_alltest::functiontest::Color param1)
938 {
939 return (::ns_alltest::functiontest::Color::key_t)(((int)param1.get_key() + 1) % g_testEnum);
940 }
941
BaseFunctionTest31(::ns_alltest::functiontest::Color param1)942 void BaseFunctionTest31(::ns_alltest::functiontest::Color param1)
943 {
944 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << param1 << std::endl;
945 }
946
BaseFunctionTest32(int8_t param1,int16_t param2,int32_t param3,int64_t param4,bool param8)947 int16_t BaseFunctionTest32(int8_t param1, int16_t param2, int32_t param3, int64_t param4, bool param8)
948 {
949 if (param8) {
950 return param2;
951 } else {
952 return static_cast<int16_t>(param1);
953 }
954 }
955
BaseFunctionTest33(int8_t param1,int16_t param2,int32_t param3,int64_t param4,bool param8)956 int32_t BaseFunctionTest33(int8_t param1, int16_t param2, int32_t param3, int64_t param4, bool param8)
957 {
958 if (param8) {
959 return param3;
960 } else {
961 return static_cast<int32_t>(param2);
962 }
963 }
964
BaseFunctionTest34(int8_t param1,int16_t param2,int32_t param3,int64_t param4,bool param8)965 int64_t BaseFunctionTest34(int8_t param1, int16_t param2, int32_t param3, int64_t param4, bool param8)
966 {
967 if (param8) {
968 return param4;
969 } else {
970 return static_cast<int64_t>(param2);
971 }
972 }
973
BaseFunctionTest35(int8_t param1,int16_t param2,int32_t param3,int64_t param4,bool param8)974 int8_t BaseFunctionTest35(int8_t param1, int16_t param2, int32_t param3, int64_t param4, bool param8)
975 {
976 if (param8) {
977 return static_cast<int8_t>(param1);
978 } else {
979 return static_cast<int8_t>(param2);
980 }
981 }
982
BaseFunctionTest36(int8_t param1,int16_t param2,bool param8,array_view<int8_t> param9,array_view<int64_t> param10)983 array<int32_t> BaseFunctionTest36(int8_t param1, int16_t param2, bool param8, array_view<int8_t> param9,
984 array_view<int64_t> param10)
985 {
986 if (param8) {
987 array<int32_t> result = array<int32_t>::make(param9.size());
988 for (std::size_t i = 0; i < param9.size(); i++) {
989 result[i] = param9[i] + param1 + param2;
990 }
991 return result;
992 } else {
993 array<int32_t> result = array<int32_t>::make(param10.size());
994 for (std::size_t i = 0; i < param10.size(); i++) {
995 result[i] = static_cast<int32_t>(param10[i]);
996 }
997 return result;
998 }
999 }
1000
BaseFunctionTest37(int8_t param1,int16_t param2,int32_t param3,bool param8,array_view<int64_t> param10)1001 array<int64_t> BaseFunctionTest37(int8_t param1, int16_t param2, int32_t param3, bool param8,
1002 array_view<int64_t> param10)
1003 {
1004 if (param8) {
1005 array<int64_t> result = array<int64_t>::make(param10.size());
1006 for (std::size_t i = 0; i < param10.size(); i++) {
1007 result[i] = param10[i] + param1 + param2 + param3;
1008 }
1009 return result;
1010 } else {
1011 array<int64_t> result = array<int64_t>::make(param10.size());
1012 for (std::size_t i = 0; i < param10.size(); i++) {
1013 result[i] = param10[i] * g_testIntAdd10;
1014 }
1015 return result;
1016 }
1017 }
1018
BaseFunctionTest38(int8_t param1,string_view param7,bool param8,array_view<int8_t> param9,array_view<int16_t> param10)1019 string BaseFunctionTest38(int8_t param1, string_view param7, bool param8, array_view<int8_t> param9,
1020 array_view<int16_t> param10)
1021 {
1022 if (param8) {
1023 return std::string(param7) + std::to_string(param1);
1024 } else {
1025 return std::string(param7) + std::to_string(param9[0]) + std::to_string(param10[0]);
1026 }
1027 }
1028
BaseFunctionTest39(int16_t param2,string_view param7,bool param8,array_view<bool> param9,array_view<int32_t> param10)1029 bool BaseFunctionTest39(int16_t param2, string_view param7, bool param8, array_view<bool> param9,
1030 array_view<int32_t> param10)
1031 {
1032 if (param2 == g_testIntAdd100) {
1033 return param8;
1034 } else {
1035 return false;
1036 }
1037 }
1038
BaseFunctionTest40(double param6,string_view param7,bool param8,array_view<int8_t> param9,array_view<uint8_t> param10)1039 array<int8_t> BaseFunctionTest40(double param6, string_view param7, bool param8, array_view<int8_t> param9,
1040 array_view<uint8_t> param10)
1041 {
1042 if (param8) {
1043 array<int8_t> result = array<int8_t>::make(param9.size());
1044 for (std::size_t i = 0; i < param9.size(); i++) {
1045 result[i] = param9[i] * g_testInter;
1046 }
1047 return result;
1048 } else {
1049 array<int8_t> result = array<int8_t>::make(param9.size());
1050 for (std::size_t i = 0; i < param9.size(); i++) {
1051 result[i] = param9[i] + g_testIntAdd10;
1052 }
1053 return result;
1054 }
1055 }
1056
BaseFunctionTest41(int8_t param1,int16_t param2,int32_t param3,int64_t param4,float param5)1057 void BaseFunctionTest41(int8_t param1, int16_t param2, int32_t param3, int64_t param4, float param5)
1058 {
1059 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << param1 << " param2 " << param2 << " param3 " << param3
1060 << " param4 " << param4 << std::endl;
1061 }
1062
BaseFunctionTest42_int(int32_t param1,int16_t param2)1063 int32_t BaseFunctionTest42_int(int32_t param1, int16_t param2)
1064 {
1065 std::cout << "NameSpaceImpl: " << __func__ << " param1 " << param1 << " param2 " << param2 << std::endl;
1066 int64_t result = static_cast<int64_t>(param1) + static_cast<int64_t>(param2);
1067 std::cout << "NameSpaceImpl: " << __func__ << " result " << result << std::endl;
1068 if (result > INT32_MAX || result < INT32_MIN) {
1069 taihe::set_error("BaseFunctionTest42_int: result exceeds int32_t range");
1070 }
1071 // 返回结果
1072 return static_cast<int32_t>(result);
1073 }
1074
BaseFunctionTest42_container(optional_view<int32_t> param1,map_view<string,int32_t> param2)1075 int32_t BaseFunctionTest42_container(optional_view<int32_t> param1, map_view<string, int32_t> param2)
1076 {
1077 if (param1) {
1078 return *param1 + g_testIntAdd10;
1079 } else {
1080 std::cout << "NameSpaceImpl: " << __func__ << " param1 is null" << std::endl;
1081 return INT32_MIN;
1082 }
1083 }
1084
BaseFunctionTest42_void()1085 int32_t BaseFunctionTest42_void()
1086 {
1087 return INT32_MAX;
1088 }
1089
BaseFunctionTest42_struct(::ns_alltest::functiontest::Data const & param1)1090 void BaseFunctionTest42_struct(::ns_alltest::functiontest::Data const ¶m1)
1091 {
1092 std::cout << "NameSpaceImpl: " << __func__ << "data1: " << param1.data1 << std::endl;
1093 std::cout << "NameSpaceImpl: " << __func__ << "data2: " << param1.data2 << std::endl;
1094 std::cout << "NameSpaceImpl: " << __func__ << "data3: " << param1.data3 << std::endl;
1095 }
1096
BaseFunctionTest59(map_view<string,string> param1)1097 void BaseFunctionTest59(map_view<string, string> param1)
1098 {
1099 std::cout << "Using begin() and end() for traversal:" << std::endl;
1100 for (auto it = param1.begin(); it != param1.end(); ++it) {
1101 auto const &[key, value] = *it;
1102 std::cout << "Key: " << key << ", Value: " << value << std::endl;
1103 }
1104 }
1105
BaseFunctionTest60(map_view<int64_t,bool> param1)1106 bool BaseFunctionTest60(map_view<int64_t, bool> param1)
1107 {
1108 for (auto const &pair : param1) {
1109 if (pair.first <= 0) {
1110 return false;
1111 }
1112 }
1113 return true;
1114 }
1115
get_interface_NameSpace()1116 ::ns_alltest::functiontest::TestNameSpace get_interface_NameSpace()
1117 {
1118 return make_holder<TestNameSpace, ::ns_alltest::functiontest::TestNameSpace>();
1119 }
1120
get_interface_performance1()1121 ::ns_alltest::functiontest::TestInterfacePerformance1 get_interface_performance1()
1122 {
1123 return make_holder<TestInterfacePerformance1, ::ns_alltest::functiontest::TestInterfacePerformance1>();
1124 }
1125
get_interface_performance2()1126 ::ns_alltest::functiontest::TestInterfacePerformance2 get_interface_performance2()
1127 {
1128 return make_holder<TestInterfacePerformance2, ::ns_alltest::functiontest::TestInterfacePerformance2>();
1129 }
1130
get_interface_performance3()1131 ::ns_alltest::functiontest::TestInterfacePerformance3 get_interface_performance3()
1132 {
1133 return make_holder<TestInterfacePerformance3, ::ns_alltest::functiontest::TestInterfacePerformance3>();
1134 }
1135
get_interface_performance4()1136 ::ns_alltest::functiontest::TestInterfacePerformance4 get_interface_performance4()
1137 {
1138 return make_holder<TestInterfacePerformance4, ::ns_alltest::functiontest::TestInterfacePerformance4>();
1139 }
1140
get_interface_performance5()1141 ::ns_alltest::functiontest::TestInterfacePerformance5 get_interface_performance5()
1142 {
1143 return make_holder<TestInterfacePerformance5, ::ns_alltest::functiontest::TestInterfacePerformance5>();
1144 }
1145
get_interface_performance6()1146 ::ns_alltest::functiontest::TestInterfacePerformance6 get_interface_performance6()
1147 {
1148 return make_holder<TestInterfacePerformance6, ::ns_alltest::functiontest::TestInterfacePerformance6>();
1149 }
1150
get_interface_performance7()1151 ::ns_alltest::functiontest::TestInterfacePerformance7 get_interface_performance7()
1152 {
1153 return make_holder<TestInterfacePerformance7, ::ns_alltest::functiontest::TestInterfacePerformance7>();
1154 }
1155
get_interface_performance8()1156 ::ns_alltest::functiontest::TestInterfacePerformance8 get_interface_performance8()
1157 {
1158 return make_holder<TestInterfacePerformance8, ::ns_alltest::functiontest::TestInterfacePerformance8>();
1159 }
1160
get_interface_performance9()1161 ::ns_alltest::functiontest::TestInterfacePerformance9 get_interface_performance9()
1162 {
1163 return make_holder<TestInterfacePerformance9, ::ns_alltest::functiontest::TestInterfacePerformance9>();
1164 }
1165
get_interface_performance10()1166 ::ns_alltest::functiontest::TestInterfacePerformance10 get_interface_performance10()
1167 {
1168 return make_holder<TestInterfacePerformance10, ::ns_alltest::functiontest::TestInterfacePerformance10>();
1169 }
1170
get_interface_performance11()1171 ::ns_alltest::functiontest::TestInterfacePerformance11 get_interface_performance11()
1172 {
1173 return make_holder<TestInterfacePerformance11, ::ns_alltest::functiontest::TestInterfacePerformance11>();
1174 }
1175
get_interface_performance12()1176 ::ns_alltest::functiontest::TestInterfacePerformance12 get_interface_performance12()
1177 {
1178 return make_holder<TestInterfacePerformance12, ::ns_alltest::functiontest::TestInterfacePerformance12>();
1179 }
1180
get_interface_performance13()1181 ::ns_alltest::functiontest::TestInterfacePerformance13 get_interface_performance13()
1182 {
1183 return make_holder<TestInterfacePerformance13, ::ns_alltest::functiontest::TestInterfacePerformance13>();
1184 }
1185
get_interface_performance14()1186 ::ns_alltest::functiontest::TestInterfacePerformance14 get_interface_performance14()
1187 {
1188 return make_holder<TestInterfacePerformance14, ::ns_alltest::functiontest::TestInterfacePerformance14>();
1189 }
1190
get_interface_performance15()1191 ::ns_alltest::functiontest::TestInterfacePerformance15 get_interface_performance15()
1192 {
1193 return make_holder<TestInterfacePerformance15, ::ns_alltest::functiontest::TestInterfacePerformance15>();
1194 }
1195
get_interface_performance16()1196 ::ns_alltest::functiontest::TestInterfacePerformance16 get_interface_performance16()
1197 {
1198 return make_holder<TestInterfacePerformance16, ::ns_alltest::functiontest::TestInterfacePerformance16>();
1199 }
1200
get_interface_performance17()1201 ::ns_alltest::functiontest::TestInterfacePerformance17 get_interface_performance17()
1202 {
1203 return make_holder<TestInterfacePerformance17, ::ns_alltest::functiontest::TestInterfacePerformance17>();
1204 }
1205
get_interface_performance18()1206 ::ns_alltest::functiontest::TestInterfacePerformance18 get_interface_performance18()
1207 {
1208 return make_holder<TestInterfacePerformance18, ::ns_alltest::functiontest::TestInterfacePerformance18>();
1209 }
1210
get_interface_performance19()1211 ::ns_alltest::functiontest::TestInterfacePerformance19 get_interface_performance19()
1212 {
1213 return make_holder<TestInterfacePerformance19, ::ns_alltest::functiontest::TestInterfacePerformance19>();
1214 }
1215
get_interface_performance20()1216 ::ns_alltest::functiontest::TestInterfacePerformance20 get_interface_performance20()
1217 {
1218 return make_holder<TestInterfacePerformance20, ::ns_alltest::functiontest::TestInterfacePerformance20>();
1219 }
1220
get_interface_performance21()1221 ::ns_alltest::functiontest::TestInterfacePerformance21 get_interface_performance21()
1222 {
1223 return make_holder<TestInterfacePerformance21, ::ns_alltest::functiontest::TestInterfacePerformance21>();
1224 }
1225
get_interface_IbaseInterface2()1226 ::ns_alltest::functiontest::IbaseInterface2 get_interface_IbaseInterface2()
1227 {
1228 return make_holder<IbaseInterface2, ::ns_alltest::functiontest::IbaseInterface2>();
1229 }
1230
get_interface_IbaseInterface3()1231 ::ns_alltest::functiontest::IbaseInterface3 get_interface_IbaseInterface3()
1232 {
1233 return make_holder<IbaseInterface3, ::ns_alltest::functiontest::IbaseInterface3>();
1234 }
1235
1236 } // namespace
1237
1238 // because these macros are auto-generate, lint will cause false positive.
1239 // NOLINTBEGIN
1240 TH_EXPORT_CPP_API_BaseFunctionTest1(BaseFunctionTest1);
1241 TH_EXPORT_CPP_API_BaseFunctionTest2(BaseFunctionTest2);
1242 TH_EXPORT_CPP_API_BaseFunctionTest3(BaseFunctionTest3);
1243 TH_EXPORT_CPP_API_BaseFunctionTest4(BaseFunctionTest4);
1244 TH_EXPORT_CPP_API_BaseFunctionTest5(BaseFunctionTest5);
1245 TH_EXPORT_CPP_API_BaseFunctionTest6(BaseFunctionTest6);
1246 TH_EXPORT_CPP_API_BaseFunctionTest7(BaseFunctionTest7);
1247 TH_EXPORT_CPP_API_BaseFunctionTest8(BaseFunctionTest8);
1248 TH_EXPORT_CPP_API_BaseFunctionTest9(BaseFunctionTest9);
1249 TH_EXPORT_CPP_API_BaseFunctionTest10(BaseFunctionTest10);
1250 TH_EXPORT_CPP_API_BaseFunctionTest11(BaseFunctionTest11);
1251 TH_EXPORT_CPP_API_BaseFunctionTest12(BaseFunctionTest12);
1252 TH_EXPORT_CPP_API_BaseFunctionTest13(BaseFunctionTest13);
1253 TH_EXPORT_CPP_API_BaseFunctionTest14(BaseFunctionTest14);
1254 TH_EXPORT_CPP_API_BaseFunctionTest15(BaseFunctionTest15);
1255 TH_EXPORT_CPP_API_BaseFunctionTest16(BaseFunctionTest16);
1256 TH_EXPORT_CPP_API_BaseFunctionTest17(BaseFunctionTest17);
1257 TH_EXPORT_CPP_API_BaseFunctionTest18(BaseFunctionTest18);
1258 TH_EXPORT_CPP_API_BaseFunctionTest19(BaseFunctionTest19);
1259 TH_EXPORT_CPP_API_BaseFunctionTest20(BaseFunctionTest20);
1260 TH_EXPORT_CPP_API_BaseFunctionTest21(BaseFunctionTest21);
1261 TH_EXPORT_CPP_API_BaseFunctionTest22(BaseFunctionTest22);
1262 TH_EXPORT_CPP_API_BaseFunctionTest23(BaseFunctionTest23);
1263 TH_EXPORT_CPP_API_BaseFunctionTest24(BaseFunctionTest24);
1264 TH_EXPORT_CPP_API_BaseFunctionTest25(BaseFunctionTest25);
1265 TH_EXPORT_CPP_API_BaseFunctionTest26(BaseFunctionTest26);
1266 TH_EXPORT_CPP_API_BaseFunctionTest27(BaseFunctionTest27);
1267 TH_EXPORT_CPP_API_BaseFunctionTest28(BaseFunctionTest28);
1268 TH_EXPORT_CPP_API_BaseFunctionTest29(BaseFunctionTest29);
1269 TH_EXPORT_CPP_API_BaseFunctionTest30(BaseFunctionTest30);
1270 TH_EXPORT_CPP_API_BaseFunctionTest31(BaseFunctionTest31);
1271 TH_EXPORT_CPP_API_BaseFunctionTest32(BaseFunctionTest32);
1272 TH_EXPORT_CPP_API_BaseFunctionTest33(BaseFunctionTest33);
1273 TH_EXPORT_CPP_API_BaseFunctionTest34(BaseFunctionTest34);
1274 TH_EXPORT_CPP_API_BaseFunctionTest35(BaseFunctionTest35);
1275 TH_EXPORT_CPP_API_BaseFunctionTest36(BaseFunctionTest36);
1276 TH_EXPORT_CPP_API_BaseFunctionTest37(BaseFunctionTest37);
1277 TH_EXPORT_CPP_API_BaseFunctionTest38(BaseFunctionTest38);
1278 TH_EXPORT_CPP_API_BaseFunctionTest39(BaseFunctionTest39);
1279 TH_EXPORT_CPP_API_BaseFunctionTest40(BaseFunctionTest40);
1280 TH_EXPORT_CPP_API_BaseFunctionTest41(BaseFunctionTest41);
1281 TH_EXPORT_CPP_API_BaseFunctionTest42_int(BaseFunctionTest42_int);
1282 TH_EXPORT_CPP_API_BaseFunctionTest42_container(BaseFunctionTest42_container);
1283 TH_EXPORT_CPP_API_BaseFunctionTest42_void(BaseFunctionTest42_void);
1284 TH_EXPORT_CPP_API_BaseFunctionTest42_struct(BaseFunctionTest42_struct);
1285 TH_EXPORT_CPP_API_BaseFunctionTest59(BaseFunctionTest59);
1286 TH_EXPORT_CPP_API_BaseFunctionTest60(BaseFunctionTest60);
1287 TH_EXPORT_CPP_API_get_interface_NameSpace(get_interface_NameSpace);
1288 TH_EXPORT_CPP_API_get_interface_performance1(get_interface_performance1);
1289 TH_EXPORT_CPP_API_get_interface_performance2(get_interface_performance2);
1290 TH_EXPORT_CPP_API_get_interface_performance3(get_interface_performance3);
1291 TH_EXPORT_CPP_API_get_interface_performance4(get_interface_performance4);
1292 TH_EXPORT_CPP_API_get_interface_performance5(get_interface_performance5);
1293 TH_EXPORT_CPP_API_get_interface_performance6(get_interface_performance6);
1294 TH_EXPORT_CPP_API_get_interface_performance7(get_interface_performance7);
1295 TH_EXPORT_CPP_API_get_interface_performance8(get_interface_performance8);
1296 TH_EXPORT_CPP_API_get_interface_performance9(get_interface_performance9);
1297 TH_EXPORT_CPP_API_get_interface_performance10(get_interface_performance10);
1298 TH_EXPORT_CPP_API_get_interface_performance11(get_interface_performance11);
1299 TH_EXPORT_CPP_API_get_interface_performance12(get_interface_performance12);
1300 TH_EXPORT_CPP_API_get_interface_performance13(get_interface_performance13);
1301 TH_EXPORT_CPP_API_get_interface_performance14(get_interface_performance14);
1302 TH_EXPORT_CPP_API_get_interface_performance15(get_interface_performance15);
1303 TH_EXPORT_CPP_API_get_interface_performance16(get_interface_performance16);
1304 TH_EXPORT_CPP_API_get_interface_performance17(get_interface_performance17);
1305 TH_EXPORT_CPP_API_get_interface_performance18(get_interface_performance18);
1306 TH_EXPORT_CPP_API_get_interface_performance19(get_interface_performance19);
1307 TH_EXPORT_CPP_API_get_interface_performance20(get_interface_performance20);
1308 TH_EXPORT_CPP_API_get_interface_performance21(get_interface_performance21);
1309 TH_EXPORT_CPP_API_get_interface_IbaseInterface2(get_interface_IbaseInterface2);
1310 TH_EXPORT_CPP_API_get_interface_IbaseInterface3(get_interface_IbaseInterface3);
1311 // NOLINTEND