• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 &param1)
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