BadScript 2
Loading...
Searching...
No Matches
BadDynamicInteropFunction.cs
Go to the documentation of this file.
5
10
15{
19 private readonly Func<BadExecutionContext, BadObject> m_Func;
20
29 Func<BadExecutionContext, BadObject> func,
30 BadClassPrototype returnType,
31 params BadFunctionParameter[] parameters) : base(name,
32 false,
33 false,
34 returnType,
35 false,
36 parameters
37 )
38 {
39 m_Func = func;
40 }
41
50 Action<BadExecutionContext> func,
51 BadClassPrototype returnType,
52 params BadFunctionParameter[] parameters) : base(name,
53 false,
54 false,
55 returnType,
56 false,
57 parameters
58 )
59 {
60 m_Func = context =>
61 {
62 func(context);
63
64 return Null;
65 };
66 }
67
76 Action func,
77 BadClassPrototype returnType,
78 params BadFunctionParameter[] parameters) : base(name,
79 false,
80 false,
81 returnType,
82 false,
83 parameters
84 )
85 {
86 m_Func = _ =>
87 {
88 func();
89
90 return Null;
91 };
92 }
93
95 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
96 {
97 CheckParameters(args, caller);
98
99 yield return m_Func(caller);
100 }
101
107 public static implicit operator BadDynamicInteropFunction(Func<BadExecutionContext, BadObject> func)
108 {
109 return new BadDynamicInteropFunction(null,
110 func,
112 );
113 }
114}
115
120public class BadDynamicInteropFunction<T> : BadFunction
121{
125 private readonly Func<BadExecutionContext, T, BadObject> m_Func;
126
135 Func<BadExecutionContext, T, BadObject> func,
136 BadClassPrototype returnType,
137 params BadFunctionParameter[] parameters) : base(name,
138 false,
139 false,
140 returnType,
141 false,
142 parameters
143 )
144 {
145 m_Func = func;
146 }
147
149 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
150 {
151 CheckParameters(args, caller);
152
153 yield return m_Func.Invoke(caller,
154 GetParameter(args, 0)
155 .Unwrap<T>()
156 );
157 }
158
164 public static implicit operator BadDynamicInteropFunction<T>(Func<BadExecutionContext, T, BadObject> func)
165 {
166 return new BadDynamicInteropFunction<T>(null,
167 func,
169 typeof(T).Name
170 );
171 }
172}
173
179public class BadDynamicInteropFunction<T1, T2> : BadFunction
180{
184 private readonly Func<BadExecutionContext, T1, T2, BadObject> m_Func;
185
194 Func<BadExecutionContext, T1, T2, BadObject> func,
195 BadClassPrototype returnType,
196 params BadFunctionParameter[] parameters) : base(name,
197 false,
198 false,
199 returnType,
200 false,
201 parameters
202 )
203 {
204 m_Func = func;
205 }
206
208 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
209 {
210 CheckParameters(args, caller);
211
212 yield return m_Func.Invoke(caller,
213 GetParameter(args, 0)
214 .Unwrap<T1>(),
215 GetParameter(args, 1)
216 .Unwrap<T2>()
217 );
218 }
219
225 public static implicit operator BadDynamicInteropFunction<T1, T2>(Func<BadExecutionContext, T1, T2, BadObject> func)
226 {
227 return new BadDynamicInteropFunction<T1, T2>(null,
228 func,
230 typeof(T1).Name,
231 typeof(T2).Name
232 );
233 }
234}
235
242public class BadDynamicInteropFunction<T1, T2, T3> : BadFunction
243{
247 private readonly Func<BadExecutionContext, T1, T2, T3, BadObject> m_Func;
248
257 Func<BadExecutionContext, T1, T2, T3, BadObject> func,
258 BadClassPrototype returnType,
259 params BadFunctionParameter[] parameters) : base(name,
260 false,
261 false,
262 returnType,
263 false,
264 parameters
265 )
266 {
267 m_Func = func;
268 }
269
271 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
272 {
273 CheckParameters(args, caller);
274
275 yield return m_Func.Invoke(caller,
276 GetParameter(args, 0)
277 .Unwrap<T1>(),
278 GetParameter(args, 1)
279 .Unwrap<T2>(),
280 GetParameter(args, 2)
281 .Unwrap<T3>()
282 );
283 }
284
290 public static implicit operator BadDynamicInteropFunction<T1, T2, T3>(
291 Func<BadExecutionContext, T1, T2, T3, BadObject> func)
292 {
294 func,
296 typeof(T1).Name,
297 typeof(T2).Name,
298 typeof(T3).Name
299 );
300 }
301}
302
310public class BadDynamicInteropFunction<T1, T2, T3, T4> : BadFunction
311{
315 private readonly Func<BadExecutionContext, T1, T2, T3, T4, BadObject> m_Func;
316
325 Func<BadExecutionContext, T1, T2, T3, T4, BadObject> func,
326 BadClassPrototype returnType,
327 params BadFunctionParameter[] parameters) : base(name,
328 false,
329 false,
330 returnType,
331 false,
332 parameters
333 )
334 {
335 m_Func = func;
336 }
337
339 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
340 {
341 CheckParameters(args, caller);
342
343 yield return m_Func.Invoke(caller,
344 GetParameter(args, 0)
345 .Unwrap<T1>(),
346 GetParameter(args, 1)
347 .Unwrap<T2>(),
348 GetParameter(args, 2)
349 .Unwrap<T3>(),
350 GetParameter(args, 3)
351 .Unwrap<T4>()
352 );
353 }
354
360 public static implicit operator BadDynamicInteropFunction<T1, T2, T3, T4>(
361 Func<BadExecutionContext, T1, T2, T3, T4, BadObject> func)
362 {
364 func,
366 typeof(T1).Name,
367 typeof(T2).Name,
368 typeof(T3).Name,
369 typeof(T4).Name
370 );
371 }
372}
373
382public class BadDynamicInteropFunction<T1, T2, T3, T4, T5> : BadFunction
383{
387 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, BadObject> m_Func;
388
397 Func<BadExecutionContext, T1, T2, T3, T4, T5, BadObject> func,
398 BadClassPrototype returnType,
399 params BadFunctionParameter[] parameters) : base(name,
400 false,
401 false,
402 returnType,
403 false,
404 parameters
405 )
406 {
407 m_Func = func;
408 }
409
411 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
412 {
413 CheckParameters(args, caller);
414
415 yield return m_Func.Invoke(caller,
416 GetParameter(args, 0)
417 .Unwrap<T1>(),
418 GetParameter(args, 1)
419 .Unwrap<T2>(),
420 GetParameter(args, 2)
421 .Unwrap<T3>(),
422 GetParameter(args, 3)
423 .Unwrap<T4>(),
424 GetParameter(args, 4)
425 .Unwrap<T5>()
426 );
427 }
428
434 public static implicit operator BadDynamicInteropFunction<T1, T2, T3, T4, T5>(
435 Func<BadExecutionContext, T1, T2, T3, T4, T5, BadObject> func)
436 {
438 func,
440 typeof(T1).Name,
441 typeof(T2).Name,
442 typeof(T3).Name,
443 typeof(T4).Name,
444 typeof(T5).Name
445 );
446 }
447}
448
458public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6> : BadFunction
459{
463 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, BadObject> m_Func;
464
473 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, BadObject> func,
474 BadClassPrototype returnType,
475 params BadFunctionParameter[] parameters) : base(name,
476 false,
477 false,
478 returnType,
479 false,
480 parameters
481 )
482 {
483 m_Func = func;
484 }
485
487 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
488 {
489 CheckParameters(args, caller);
490
491 yield return m_Func.Invoke(caller,
492 GetParameter(args, 0)
493 .Unwrap<T1>(),
494 GetParameter(args, 1)
495 .Unwrap<T2>(),
496 GetParameter(args, 2)
497 .Unwrap<T3>(),
498 GetParameter(args, 3)
499 .Unwrap<T4>(),
500 GetParameter(args, 4)
501 .Unwrap<T5>(),
502 GetParameter(args, 5)
503 .Unwrap<T6>()
504 );
505 }
506
513 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, BadObject> func)
514 {
516 func,
518 typeof(T1).Name,
519 typeof(T2).Name,
520 typeof(T3).Name,
521 typeof(T4).Name,
522 typeof(T5).Name,
523 typeof(T6).Name
524 );
525 }
526}
527
538public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7> : BadFunction
539{
543 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, BadObject> m_Func;
544
553 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, BadObject> func,
554 BadClassPrototype returnType,
555 params BadFunctionParameter[] parameters) : base(name,
556 false,
557 false,
558 returnType,
559 false,
560 parameters
561 )
562 {
563 m_Func = func;
564 }
565
567 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
568 {
569 CheckParameters(args, caller);
570
571 yield return m_Func.Invoke(caller,
572 GetParameter(args, 0)
573 .Unwrap<T1>(),
574 GetParameter(args, 1)
575 .Unwrap<T2>(),
576 GetParameter(args, 2)
577 .Unwrap<T3>(),
578 GetParameter(args, 3)
579 .Unwrap<T4>(),
580 GetParameter(args, 4)
581 .Unwrap<T5>(),
582 GetParameter(args, 5)
583 .Unwrap<T6>(),
584 GetParameter(args, 6)
585 .Unwrap<T7>()
586 );
587 }
588
595 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, BadObject> func)
596 {
598 func,
600 typeof(T1).Name,
601 typeof(T2).Name,
602 typeof(T3).Name,
603 typeof(T4).Name,
604 typeof(T5).Name,
605 typeof(T6).Name,
606 typeof(T7).Name
607 );
608 }
609}
610
622public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8> : BadFunction
623{
627 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, BadObject> m_Func;
628
637 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, BadObject> func,
638 BadClassPrototype returnType,
639 params BadFunctionParameter[] parameters) : base(name,
640 false,
641 false,
642 returnType,
643 false,
644 parameters
645 )
646 {
647 m_Func = func;
648 }
649
651 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
652 {
653 CheckParameters(args, caller);
654
655 yield return m_Func.Invoke(caller,
656 GetParameter(args, 0)
657 .Unwrap<T1>(),
658 GetParameter(args, 1)
659 .Unwrap<T2>(),
660 GetParameter(args, 2)
661 .Unwrap<T3>(),
662 GetParameter(args, 3)
663 .Unwrap<T4>(),
664 GetParameter(args, 4)
665 .Unwrap<T5>(),
666 GetParameter(args, 5)
667 .Unwrap<T6>(),
668 GetParameter(args, 6)
669 .Unwrap<T7>(),
670 GetParameter(args, 7)
671 .Unwrap<T8>()
672 );
673 }
674
681 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, BadObject> func)
682 {
684 func,
686 typeof(T1).Name,
687 typeof(T2).Name,
688 typeof(T3).Name,
689 typeof(T4).Name,
690 typeof(T5).Name,
691 typeof(T6).Name,
692 typeof(T7).Name,
693 typeof(T8).Name
694 );
695 }
696}
697
710public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8, T9> : BadFunction
711{
715 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, BadObject> m_Func;
716
725 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, BadObject> func,
726 BadClassPrototype returnType,
727 params BadFunctionParameter[] parameters) : base(name,
728 false,
729 false,
730 returnType,
731 false,
732 parameters
733 )
734 {
735 m_Func = func;
736 }
737
739 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
740 {
741 CheckParameters(args, caller);
742
743 yield return m_Func.Invoke(caller,
744 GetParameter(args, 0)
745 .Unwrap<T1>(),
746 GetParameter(args, 1)
747 .Unwrap<T2>(),
748 GetParameter(args, 2)
749 .Unwrap<T3>(),
750 GetParameter(args, 3)
751 .Unwrap<T4>(),
752 GetParameter(args, 4)
753 .Unwrap<T5>(),
754 GetParameter(args, 5)
755 .Unwrap<T6>(),
756 GetParameter(args, 6)
757 .Unwrap<T7>(),
758 GetParameter(args, 7)
759 .Unwrap<T8>(),
760 GetParameter(args, 8)
761 .Unwrap<T9>()
762 );
763 }
764
771 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, BadObject> func)
772 {
774 func,
776 typeof(T1).Name,
777 typeof(T2).Name,
778 typeof(T3).Name,
779 typeof(T4).Name,
780 typeof(T5).Name,
781 typeof(T6).Name,
782 typeof(T7).Name,
783 typeof(T8).Name,
784 typeof(T9).Name
785 );
786 }
787}
788
802public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> : BadFunction
803{
807 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, BadObject> m_Func;
808
817 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, BadObject> func,
818 BadClassPrototype returnType,
819 params BadFunctionParameter[] parameters) : base(name,
820 false,
821 false,
822 returnType,
823 false,
824 parameters
825 )
826 {
827 m_Func = func;
828 }
829
831 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
832 {
833 CheckParameters(args, caller);
834
835 yield return m_Func.Invoke(caller,
836 GetParameter(args, 0)
837 .Unwrap<T1>(),
838 GetParameter(args, 1)
839 .Unwrap<T2>(),
840 GetParameter(args, 2)
841 .Unwrap<T3>(),
842 GetParameter(args, 3)
843 .Unwrap<T4>(),
844 GetParameter(args, 4)
845 .Unwrap<T5>(),
846 GetParameter(args, 5)
847 .Unwrap<T6>(),
848 GetParameter(args, 6)
849 .Unwrap<T7>(),
850 GetParameter(args, 7)
851 .Unwrap<T8>(),
852 GetParameter(args, 8)
853 .Unwrap<T9>(),
854 GetParameter(args, 9)
855 .Unwrap<T10>()
856 );
857 }
858
865 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, BadObject> func)
866 {
868 func,
870 typeof(T1).Name,
871 typeof(T2).Name,
872 typeof(T3).Name,
873 typeof(T4).Name,
874 typeof(T5).Name,
875 typeof(T6).Name,
876 typeof(T7).Name,
877 typeof(T8).Name,
878 typeof(T9).Name,
879 typeof(T10).Name
880 );
881 }
882}
883
898public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> : BadFunction
899{
903 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, BadObject> m_Func;
904
913 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, BadObject>
914 func,
915 BadClassPrototype returnType,
916 params BadFunctionParameter[] parameters) : base(name,
917 false,
918 false,
919 returnType,
920 false,
921 parameters
922 )
923 {
924 m_Func = func;
925 }
926
928 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
929 {
930 CheckParameters(args, caller);
931
932 yield return m_Func.Invoke(caller,
933 GetParameter(args, 0)
934 .Unwrap<T1>(),
935 GetParameter(args, 1)
936 .Unwrap<T2>(),
937 GetParameter(args, 2)
938 .Unwrap<T3>(),
939 GetParameter(args, 3)
940 .Unwrap<T4>(),
941 GetParameter(args, 4)
942 .Unwrap<T5>(),
943 GetParameter(args, 5)
944 .Unwrap<T6>(),
945 GetParameter(args, 6)
946 .Unwrap<T7>(),
947 GetParameter(args, 7)
948 .Unwrap<T8>(),
949 GetParameter(args, 8)
950 .Unwrap<T9>(),
951 GetParameter(args, 9)
952 .Unwrap<T10>(),
953 GetParameter(args, 10)
954 .Unwrap<T11>()
955 );
956 }
957
964 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, BadObject> func)
965 {
967 func,
969 typeof(T1).Name,
970 typeof(T2).Name,
971 typeof(T3).Name,
972 typeof(T4).Name,
973 typeof(T5).Name,
974 typeof(T6).Name,
975 typeof(T7).Name,
976 typeof(T8).Name,
977 typeof(T9).Name,
978 typeof(T10).Name,
979 typeof(T11).Name
980 );
981 }
982}
983
999public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> : BadFunction
1000{
1004 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, BadObject> m_Func;
1005
1014 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12,
1015 BadObject> func,
1016 BadClassPrototype returnType,
1017 params BadFunctionParameter[] parameters) : base(name,
1018 false,
1019 false,
1020 returnType,
1021 false,
1022 parameters
1023 )
1024 {
1025 m_Func = func;
1026 }
1027
1029 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
1030 {
1031 CheckParameters(args, caller);
1032
1033 yield return m_Func.Invoke(caller,
1034 GetParameter(args, 0)
1035 .Unwrap<T1>(),
1036 GetParameter(args, 1)
1037 .Unwrap<T2>(),
1038 GetParameter(args, 2)
1039 .Unwrap<T3>(),
1040 GetParameter(args, 3)
1041 .Unwrap<T4>(),
1042 GetParameter(args, 4)
1043 .Unwrap<T5>(),
1044 GetParameter(args, 5)
1045 .Unwrap<T6>(),
1046 GetParameter(args, 6)
1047 .Unwrap<T7>(),
1048 GetParameter(args, 7)
1049 .Unwrap<T8>(),
1050 GetParameter(args, 8)
1051 .Unwrap<T9>(),
1052 GetParameter(args, 9)
1053 .Unwrap<T10>(),
1054 GetParameter(args, 10)
1055 .Unwrap<T11>(),
1056 GetParameter(args, 11)
1057 .Unwrap<T12>()
1058 );
1059 }
1060
1067 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, BadObject> func)
1068 {
1070 func,
1072 typeof(T1).Name,
1073 typeof(T2).Name,
1074 typeof(T3).Name,
1075 typeof(T4).Name,
1076 typeof(T5).Name,
1077 typeof(T6).Name,
1078 typeof(T7).Name,
1079 typeof(T8).Name,
1080 typeof(T9).Name,
1081 typeof(T10).Name,
1082 typeof(T11).Name,
1083 typeof(T12).Name
1084 );
1085 }
1086}
1087
1104public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> : BadFunction
1105{
1109 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, BadObject>
1111
1120 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13,
1121 BadObject> func,
1122 BadClassPrototype returnType,
1123 params BadFunctionParameter[] parameters) : base(name,
1124 false,
1125 false,
1126 returnType,
1127 false,
1128 parameters
1129 )
1130 {
1131 m_Func = func;
1132 }
1133
1135 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
1136 {
1137 CheckParameters(args, caller);
1138
1139 yield return m_Func.Invoke(caller,
1140 GetParameter(args, 0)
1141 .Unwrap<T1>(),
1142 GetParameter(args, 1)
1143 .Unwrap<T2>(),
1144 GetParameter(args, 2)
1145 .Unwrap<T3>(),
1146 GetParameter(args, 3)
1147 .Unwrap<T4>(),
1148 GetParameter(args, 4)
1149 .Unwrap<T5>(),
1150 GetParameter(args, 5)
1151 .Unwrap<T6>(),
1152 GetParameter(args, 6)
1153 .Unwrap<T7>(),
1154 GetParameter(args, 7)
1155 .Unwrap<T8>(),
1156 GetParameter(args, 8)
1157 .Unwrap<T9>(),
1158 GetParameter(args, 9)
1159 .Unwrap<T10>(),
1160 GetParameter(args, 10)
1161 .Unwrap<T11>(),
1162 GetParameter(args, 11)
1163 .Unwrap<T12>(),
1164 GetParameter(args, 12)
1165 .Unwrap<T13>()
1166 );
1167 }
1168
1175 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, BadObject> func)
1176 {
1178 func,
1180 typeof(T1).Name,
1181 typeof(T2).Name,
1182 typeof(T3).Name,
1183 typeof(T4).Name,
1184 typeof(T5).Name,
1185 typeof(T6).Name,
1186 typeof(T7).Name,
1187 typeof(T8).Name,
1188 typeof(T9).Name,
1189 typeof(T10).Name,
1190 typeof(T11).Name,
1191 typeof(T12).Name,
1192 typeof(T13).Name
1193 );
1194 }
1195}
1196
1214public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> : BadFunction
1215{
1219 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, BadObject>
1221
1230 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13,
1231 T14, BadObject> func,
1232 BadClassPrototype returnType,
1233 params BadFunctionParameter[] parameters) : base(name,
1234 false,
1235 false,
1236 returnType,
1237 false,
1238 parameters
1239 )
1240 {
1241 m_Func = func;
1242 }
1243
1245 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
1246 {
1247 CheckParameters(args, caller);
1248
1249 yield return m_Func.Invoke(caller,
1250 GetParameter(args, 0)
1251 .Unwrap<T1>(),
1252 GetParameter(args, 1)
1253 .Unwrap<T2>(),
1254 GetParameter(args, 2)
1255 .Unwrap<T3>(),
1256 GetParameter(args, 3)
1257 .Unwrap<T4>(),
1258 GetParameter(args, 4)
1259 .Unwrap<T5>(),
1260 GetParameter(args, 5)
1261 .Unwrap<T6>(),
1262 GetParameter(args, 6)
1263 .Unwrap<T7>(),
1264 GetParameter(args, 7)
1265 .Unwrap<T8>(),
1266 GetParameter(args, 8)
1267 .Unwrap<T9>(),
1268 GetParameter(args, 9)
1269 .Unwrap<T10>(),
1270 GetParameter(args, 10)
1271 .Unwrap<T11>(),
1272 GetParameter(args, 11)
1273 .Unwrap<T12>(),
1274 GetParameter(args, 12)
1275 .Unwrap<T13>(),
1276 GetParameter(args, 13)
1277 .Unwrap<T14>()
1278 );
1279 }
1280
1286 public static implicit operator
1288 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, BadObject> func)
1289 {
1291 func,
1293 typeof(T1).Name,
1294 typeof(T2).Name,
1295 typeof(T3).Name,
1296 typeof(T4).Name,
1297 typeof(T5).Name,
1298 typeof(T6).Name,
1299 typeof(T7).Name,
1300 typeof(T8).Name,
1301 typeof(T9).Name,
1302 typeof(T10).Name,
1303 typeof(T11).Name,
1304 typeof(T12).Name,
1305 typeof(T13).Name,
1306 typeof(T14).Name
1307 );
1308 }
1309}
1310
1329public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> : BadFunction
1330{
1334 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15,
1336
1345 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13,
1346 T14, T15, BadObject> func,
1347 BadClassPrototype returnType,
1348 params BadFunctionParameter[] parameters) : base(name,
1349 false,
1350 false,
1351 returnType,
1352 false,
1353 parameters
1354 )
1355 {
1356 m_Func = func;
1357 }
1358
1360 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
1361 {
1362 CheckParameters(args, caller);
1363
1364 yield return m_Func.Invoke(caller,
1365 GetParameter(args, 0)
1366 .Unwrap<T1>(),
1367 GetParameter(args, 1)
1368 .Unwrap<T2>(),
1369 GetParameter(args, 2)
1370 .Unwrap<T3>(),
1371 GetParameter(args, 3)
1372 .Unwrap<T4>(),
1373 GetParameter(args, 4)
1374 .Unwrap<T5>(),
1375 GetParameter(args, 5)
1376 .Unwrap<T6>(),
1377 GetParameter(args, 6)
1378 .Unwrap<T7>(),
1379 GetParameter(args, 7)
1380 .Unwrap<T8>(),
1381 GetParameter(args, 8)
1382 .Unwrap<T9>(),
1383 GetParameter(args, 9)
1384 .Unwrap<T10>(),
1385 GetParameter(args, 10)
1386 .Unwrap<T11>(),
1387 GetParameter(args, 11)
1388 .Unwrap<T12>(),
1389 GetParameter(args, 12)
1390 .Unwrap<T13>(),
1391 GetParameter(args, 13)
1392 .Unwrap<T14>(),
1393 GetParameter(args, 14)
1394 .Unwrap<T15>()
1395 );
1396 }
1397
1403 public static implicit operator
1405 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, BadObject> func)
1406 {
1408 func,
1410 typeof(T1).Name,
1411 typeof(T2).Name,
1412 typeof(T3).Name,
1413 typeof(T4).Name,
1414 typeof(T5).Name,
1415 typeof(T6).Name,
1416 typeof(T7).Name,
1417 typeof(T8).Name,
1418 typeof(T9).Name,
1419 typeof(T10).Name,
1420 typeof(T11).Name,
1421 typeof(T12).Name,
1422 typeof(T13).Name,
1423 typeof(T14).Name,
1424 typeof(T15).Name
1425 );
1426 }
1427}
The Execution Context. Every execution of a script needs a context the script is running in....
readonly Func< BadExecutionContext, T1, T2, T3, T4, BadObject > m_Func
The Function Lambda.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
readonly Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, BadObject > m_Func
The Function Lambda.
BadDynamicInteropFunction(BadWordToken? name, Action< BadExecutionContext > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T1, T2, T3, T4, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
readonly Func< BadExecutionContext, T, BadObject > m_Func
The Function Lambda.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T1, T2, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
readonly Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, BadObject > m_Func
The Function Lambda.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T1, T2, T3, T4, T5, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
readonly Func< BadExecutionContext, T1, T2, T3, T4, T5, BadObject > m_Func
The Function Lambda.
readonly Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, BadObject > m_Func
The Function Lambda.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
readonly Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, BadObject > m_Func
The Function Lambda.
readonly Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, BadObject > m_Func
The Function Lambda.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T1, T2, T3, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
readonly Func< BadExecutionContext, BadObject > m_Func
The Function Lambda.
readonly Func< BadExecutionContext, T1, T2, T3, BadObject > m_Func
The Function Lambda.
override IEnumerable< BadObject > InvokeBlock(BadObject[] args, BadExecutionContext caller)
BadDynamicInteropFunction(BadWordToken? name, Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, BadObject > func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
readonly Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, BadObject > m_Func
The Function Lambda.
readonly Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, BadObject > m_Func
The Function Lambda.
BadDynamicInteropFunction(BadWordToken? name, Action func, BadClassPrototype returnType, params BadFunctionParameter[] parameters)
Creates a new BadDynamicInteropFunction.
readonly Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, BadObject > m_Func
The Function Lambda.
readonly Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, BadObject > m_Func
The Function Lambda.
readonly Func< BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, BadObject > m_Func
The Function Lambda.
readonly Func< BadExecutionContext, T1, T2, BadObject > m_Func
The Function Lambda.
The Base Class for all BadScript Objects.
Definition BadObject.cs:14
static readonly BadObject Null
The Null Value for the BadScript Language.
Definition BadObject.cs:28
Implements a function that can be called from the script.
BadWordToken? Name
(optional) Name of the Function
static BadObject GetParameter(BadObject[] args, int i)
Returns the Function Parameter at the given index.
void CheckParameters(BadObject[] args, BadExecutionContext caller, BadSourcePosition? position=null)
Checks Parameters for the given function call.
The Any Prototype, Base type for all types.
static readonly BadAnyPrototype Instance
The Instance of the BadAnyPrototype.
Implements a Class Prototype for the BadScript Language.
Contains the Reader Tokens for the BadScript2 Language.
Contains the Interop Function Classes for the BadScript2 Language.
Contains Runtime Function Objects.
Contains the Runtime Objects.
Definition BadArray.cs:10