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 BadWordToken? name,
30 Func<BadExecutionContext, BadObject> func,
31 BadClassPrototype returnType,
32 params BadFunctionParameter[] parameters) : base(
33 name,
34 false,
35 false,
36 returnType, false,
37 parameters
38 )
39 {
40 m_Func = func;
41 }
42
51 BadWordToken? name,
52 Action<BadExecutionContext> func,
53 BadClassPrototype returnType,
54 params BadFunctionParameter[] parameters) : base(
55 name,
56 false,
57 false,
58 returnType, false,
59 parameters
60 )
61 {
62 m_Func = context =>
63 {
64 func(context);
65
66 return Null;
67 };
68 }
69
78 BadWordToken? name,
79 Action func,
80 BadClassPrototype returnType,
81 params BadFunctionParameter[] parameters) : base(
82 name,
83 false,
84 false,
85 returnType, false,
86 parameters
87 )
88 {
89 m_Func = _ =>
90 {
91 func();
92
93 return Null;
94 };
95 }
96
98 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
99 {
100 CheckParameters(args, caller);
101
102 yield return m_Func(caller);
103 }
104
110 public static implicit operator BadDynamicInteropFunction(Func<BadExecutionContext, BadObject> func)
111 {
112 return new BadDynamicInteropFunction(
113 null,
114 func,
116 );
117 }
118}
119
124public class BadDynamicInteropFunction<T> : BadFunction
125{
129 private readonly Func<BadExecutionContext, T, BadObject> m_Func;
130
139 BadWordToken? name,
140 Func<BadExecutionContext, T, BadObject> func,
141 BadClassPrototype returnType,
142 params BadFunctionParameter[] parameters) : base(
143 name,
144 false,
145 false,
146 returnType, false,
147 parameters
148 )
149 {
150 m_Func = func;
151 }
152
154 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
155 {
156 CheckParameters(args, caller);
157
158 yield return m_Func.Invoke(caller, GetParameter(args, 0).Unwrap<T>());
159 }
160
166 public static implicit operator BadDynamicInteropFunction<T>(Func<BadExecutionContext, T, BadObject> func)
167 {
169 null,
170 func,
172 typeof(T).Name
173 );
174 }
175}
176
182public class BadDynamicInteropFunction<T1, T2> : BadFunction
183{
187 private readonly Func<BadExecutionContext, T1, T2, BadObject> m_Func;
188
197 BadWordToken? name,
198 Func<BadExecutionContext, T1, T2, BadObject> func,
199 BadClassPrototype returnType,
200 params BadFunctionParameter[] parameters) : base(
201 name,
202 false,
203 false,
204 returnType, false,
205 parameters
206 )
207 {
208 m_Func = func;
209 }
210
212 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
213 {
214 CheckParameters(args, caller);
215
216 yield return m_Func.Invoke(
217 caller,
218 GetParameter(args, 0).Unwrap<T1>(),
219 GetParameter(args, 1).Unwrap<T2>()
220 );
221 }
222
228 public static implicit operator BadDynamicInteropFunction<T1, T2>(Func<BadExecutionContext, T1, T2, BadObject> func)
229 {
231 null,
232 func,
234 typeof(T1).Name,
235 typeof(T2).Name
236 );
237 }
238}
239
246public class BadDynamicInteropFunction<T1, T2, T3> : BadFunction
247{
251 private readonly Func<BadExecutionContext, T1, T2, T3, BadObject> m_Func;
252
261 BadWordToken? name,
262 Func<BadExecutionContext, T1, T2, T3, BadObject> func,
263 BadClassPrototype returnType,
264 params BadFunctionParameter[] parameters) : base(
265 name,
266 false,
267 false,
268 returnType, false,
269 parameters
270 )
271 {
272 m_Func = func;
273 }
274
276 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
277 {
278 CheckParameters(args, caller);
279
280 yield return m_Func.Invoke(
281 caller,
282 GetParameter(args, 0).Unwrap<T1>(),
283 GetParameter(args, 1).Unwrap<T2>(),
284 GetParameter(args, 2).Unwrap<T3>()
285 );
286 }
287
293 public static implicit operator BadDynamicInteropFunction<T1, T2, T3>(
294 Func<BadExecutionContext, T1, T2, T3, BadObject> func)
295 {
297 null,
298 func,
300 typeof(T1).Name,
301 typeof(T2).Name,
302 typeof(T3).Name
303 );
304 }
305}
306
314public class BadDynamicInteropFunction<T1, T2, T3, T4> : BadFunction
315{
319 private readonly Func<BadExecutionContext, T1, T2, T3, T4, BadObject> m_Func;
320
329 BadWordToken? name,
330 Func<BadExecutionContext, T1, T2, T3, T4, BadObject> func,
331 BadClassPrototype returnType,
332 params BadFunctionParameter[] parameters) : base(
333 name,
334 false,
335 false,
336 returnType, false,
337 parameters
338 )
339 {
340 m_Func = func;
341 }
342
344 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
345 {
346 CheckParameters(args, caller);
347
348 yield return m_Func.Invoke(
349 caller,
350 GetParameter(args, 0).Unwrap<T1>(),
351 GetParameter(args, 1).Unwrap<T2>(),
352 GetParameter(args, 2).Unwrap<T3>(),
353 GetParameter(args, 3).Unwrap<T4>()
354 );
355 }
356
362 public static implicit operator BadDynamicInteropFunction<T1, T2, T3, T4>(
363 Func<BadExecutionContext, T1, T2, T3, T4, BadObject> func)
364 {
366 null,
367 func,
369 typeof(T1).Name,
370 typeof(T2).Name,
371 typeof(T3).Name,
372 typeof(T4).Name
373 );
374 }
375}
376
385public class BadDynamicInteropFunction<T1, T2, T3, T4, T5> : BadFunction
386{
390 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, BadObject> m_Func;
391
400 BadWordToken? name,
401 Func<BadExecutionContext, T1, T2, T3, T4, T5, BadObject> func,
402 BadClassPrototype returnType,
403 params BadFunctionParameter[] parameters) : base(
404 name,
405 false,
406 false,
407 returnType, false,
408 parameters
409 )
410 {
411 m_Func = func;
412 }
413
415 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
416 {
417 CheckParameters(args, caller);
418
419 yield return m_Func.Invoke(
420 caller,
421 GetParameter(args, 0).Unwrap<T1>(),
422 GetParameter(args, 1).Unwrap<T2>(),
423 GetParameter(args, 2).Unwrap<T3>(),
424 GetParameter(args, 3).Unwrap<T4>(),
425 GetParameter(args, 4).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 null,
439 func,
441 typeof(T1).Name,
442 typeof(T2).Name,
443 typeof(T3).Name,
444 typeof(T4).Name,
445 typeof(T5).Name
446 );
447 }
448}
449
459public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6> : BadFunction
460{
464 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, BadObject> m_Func;
465
474 BadWordToken? name,
475 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, BadObject> func,
476 BadClassPrototype returnType,
477 params BadFunctionParameter[] parameters) : base(
478 name,
479 false,
480 false,
481 returnType, false,
482 parameters
483 )
484 {
485 m_Func = func;
486 }
487
489 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
490 {
491 CheckParameters(args, caller);
492
493 yield return m_Func.Invoke(
494 caller,
495 GetParameter(args, 0).Unwrap<T1>(),
496 GetParameter(args, 1).Unwrap<T2>(),
497 GetParameter(args, 2).Unwrap<T3>(),
498 GetParameter(args, 3).Unwrap<T4>(),
499 GetParameter(args, 4).Unwrap<T5>(),
500 GetParameter(args, 5).Unwrap<T6>()
501 );
502 }
503
510 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, BadObject> func)
511 {
513 null,
514 func,
516 typeof(T1).Name,
517 typeof(T2).Name,
518 typeof(T3).Name,
519 typeof(T4).Name,
520 typeof(T5).Name,
521 typeof(T6).Name
522 );
523 }
524}
525
536public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7> : BadFunction
537{
541 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, BadObject> m_Func;
542
551 BadWordToken? name,
552 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, BadObject> func,
553 BadClassPrototype returnType,
554 params BadFunctionParameter[] parameters) : base(
555 name,
556 false,
557 false,
558 returnType, false,
559 parameters
560 )
561 {
562 m_Func = func;
563 }
564
566 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
567 {
568 CheckParameters(args, caller);
569
570 yield return m_Func.Invoke(
571 caller,
572 GetParameter(args, 0).Unwrap<T1>(),
573 GetParameter(args, 1).Unwrap<T2>(),
574 GetParameter(args, 2).Unwrap<T3>(),
575 GetParameter(args, 3).Unwrap<T4>(),
576 GetParameter(args, 4).Unwrap<T5>(),
577 GetParameter(args, 5).Unwrap<T6>(),
578 GetParameter(args, 6).Unwrap<T7>()
579 );
580 }
581
588 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, BadObject> func)
589 {
591 null,
592 func,
594 typeof(T1).Name,
595 typeof(T2).Name,
596 typeof(T3).Name,
597 typeof(T4).Name,
598 typeof(T5).Name,
599 typeof(T6).Name,
600 typeof(T7).Name
601 );
602 }
603}
604
616public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8> : BadFunction
617{
621 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, BadObject> m_Func;
622
631 BadWordToken? name,
632 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, BadObject> func,
633 BadClassPrototype returnType,
634 params BadFunctionParameter[] parameters) : base(
635 name,
636 false,
637 false,
638 returnType, false,
639 parameters
640 )
641 {
642 m_Func = func;
643 }
644
646 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
647 {
648 CheckParameters(args, caller);
649
650 yield return m_Func.Invoke(
651 caller,
652 GetParameter(args, 0).Unwrap<T1>(),
653 GetParameter(args, 1).Unwrap<T2>(),
654 GetParameter(args, 2).Unwrap<T3>(),
655 GetParameter(args, 3).Unwrap<T4>(),
656 GetParameter(args, 4).Unwrap<T5>(),
657 GetParameter(args, 5).Unwrap<T6>(),
658 GetParameter(args, 6).Unwrap<T7>(),
659 GetParameter(args, 7).Unwrap<T8>()
660 );
661 }
662
669 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, BadObject> func)
670 {
672 null,
673 func,
675 typeof(T1).Name,
676 typeof(T2).Name,
677 typeof(T3).Name,
678 typeof(T4).Name,
679 typeof(T5).Name,
680 typeof(T6).Name,
681 typeof(T7).Name,
682 typeof(T8).Name
683 );
684 }
685}
686
699public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8, T9> : BadFunction
700{
704 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, BadObject> m_Func;
705
714 BadWordToken? name,
715 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, BadObject> func,
716 BadClassPrototype returnType,
717 params BadFunctionParameter[] parameters) : base(
718 name,
719 false,
720 false,
721 returnType, false,
722 parameters
723 )
724 {
725 m_Func = func;
726 }
727
729 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
730 {
731 CheckParameters(args, caller);
732
733 yield return m_Func.Invoke(
734 caller,
735 GetParameter(args, 0).Unwrap<T1>(),
736 GetParameter(args, 1).Unwrap<T2>(),
737 GetParameter(args, 2).Unwrap<T3>(),
738 GetParameter(args, 3).Unwrap<T4>(),
739 GetParameter(args, 4).Unwrap<T5>(),
740 GetParameter(args, 5).Unwrap<T6>(),
741 GetParameter(args, 6).Unwrap<T7>(),
742 GetParameter(args, 7).Unwrap<T8>(),
743 GetParameter(args, 8).Unwrap<T9>()
744 );
745 }
746
753 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, BadObject> func)
754 {
756 null,
757 func,
759 typeof(T1).Name,
760 typeof(T2).Name,
761 typeof(T3).Name,
762 typeof(T4).Name,
763 typeof(T5).Name,
764 typeof(T6).Name,
765 typeof(T7).Name,
766 typeof(T8).Name,
767 typeof(T9).Name
768 );
769 }
770}
771
785public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> : BadFunction
786{
790 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, BadObject> m_Func;
791
800 BadWordToken? name,
801 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, BadObject> func,
802 BadClassPrototype returnType,
803 params BadFunctionParameter[] parameters) : base(
804 name,
805 false,
806 false,
807 returnType, false,
808 parameters
809 )
810 {
811 m_Func = func;
812 }
813
815 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
816 {
817 CheckParameters(args, caller);
818
819 yield return m_Func.Invoke(
820 caller,
821 GetParameter(args, 0).Unwrap<T1>(),
822 GetParameter(args, 1).Unwrap<T2>(),
823 GetParameter(args, 2).Unwrap<T3>(),
824 GetParameter(args, 3).Unwrap<T4>(),
825 GetParameter(args, 4).Unwrap<T5>(),
826 GetParameter(args, 5).Unwrap<T6>(),
827 GetParameter(args, 6).Unwrap<T7>(),
828 GetParameter(args, 7).Unwrap<T8>(),
829 GetParameter(args, 8).Unwrap<T9>(),
830 GetParameter(args, 9).Unwrap<T10>()
831 );
832 }
833
840 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, BadObject> func)
841 {
843 null,
844 func,
846 typeof(T1).Name,
847 typeof(T2).Name,
848 typeof(T3).Name,
849 typeof(T4).Name,
850 typeof(T5).Name,
851 typeof(T6).Name,
852 typeof(T7).Name,
853 typeof(T8).Name,
854 typeof(T9).Name,
855 typeof(T10).Name
856 );
857 }
858}
859
874public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> : BadFunction
875{
879 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, BadObject> m_Func;
880
889 BadWordToken? name,
890 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, BadObject> func,
891 BadClassPrototype returnType,
892 params BadFunctionParameter[] parameters) : base(
893 name,
894 false,
895 false,
896 returnType, false,
897 parameters
898 )
899 {
900 m_Func = func;
901 }
902
904 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
905 {
906 CheckParameters(args, caller);
907
908 yield return m_Func.Invoke(
909 caller,
910 GetParameter(args, 0).Unwrap<T1>(),
911 GetParameter(args, 1).Unwrap<T2>(),
912 GetParameter(args, 2).Unwrap<T3>(),
913 GetParameter(args, 3).Unwrap<T4>(),
914 GetParameter(args, 4).Unwrap<T5>(),
915 GetParameter(args, 5).Unwrap<T6>(),
916 GetParameter(args, 6).Unwrap<T7>(),
917 GetParameter(args, 7).Unwrap<T8>(),
918 GetParameter(args, 8).Unwrap<T9>(),
919 GetParameter(args, 9).Unwrap<T10>(),
920 GetParameter(args, 10).Unwrap<T11>()
921 );
922 }
923
930 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, BadObject> func)
931 {
933 null,
934 func,
936 typeof(T1).Name,
937 typeof(T2).Name,
938 typeof(T3).Name,
939 typeof(T4).Name,
940 typeof(T5).Name,
941 typeof(T6).Name,
942 typeof(T7).Name,
943 typeof(T8).Name,
944 typeof(T9).Name,
945 typeof(T10).Name,
946 typeof(T11).Name
947 );
948 }
949}
950
966public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> : BadFunction
967{
971 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, BadObject> m_Func;
972
981 BadWordToken? name,
982 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, BadObject> func,
983 BadClassPrototype returnType,
984 params BadFunctionParameter[] parameters) : base(
985 name,
986 false,
987 false,
988 returnType, false,
989 parameters
990 )
991 {
992 m_Func = func;
993 }
994
996 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
997 {
998 CheckParameters(args, caller);
999
1000 yield return m_Func.Invoke(
1001 caller,
1002 GetParameter(args, 0).Unwrap<T1>(),
1003 GetParameter(args, 1).Unwrap<T2>(),
1004 GetParameter(args, 2).Unwrap<T3>(),
1005 GetParameter(args, 3).Unwrap<T4>(),
1006 GetParameter(args, 4).Unwrap<T5>(),
1007 GetParameter(args, 5).Unwrap<T6>(),
1008 GetParameter(args, 6).Unwrap<T7>(),
1009 GetParameter(args, 7).Unwrap<T8>(),
1010 GetParameter(args, 8).Unwrap<T9>(),
1011 GetParameter(args, 9).Unwrap<T10>(),
1012 GetParameter(args, 10).Unwrap<T11>(),
1013 GetParameter(args, 11).Unwrap<T12>()
1014 );
1015 }
1016
1023 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, BadObject> func)
1024 {
1026 null,
1027 func,
1029 typeof(T1).Name,
1030 typeof(T2).Name,
1031 typeof(T3).Name,
1032 typeof(T4).Name,
1033 typeof(T5).Name,
1034 typeof(T6).Name,
1035 typeof(T7).Name,
1036 typeof(T8).Name,
1037 typeof(T9).Name,
1038 typeof(T10).Name,
1039 typeof(T11).Name,
1040 typeof(T12).Name
1041 );
1042 }
1043}
1044
1061public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> : BadFunction
1062{
1066 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, BadObject>
1068
1077 BadWordToken? name,
1078 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, BadObject> func,
1079 BadClassPrototype returnType,
1080 params BadFunctionParameter[] parameters) : base(
1081 name,
1082 false,
1083 false,
1084 returnType, false,
1085 parameters
1086 )
1087 {
1088 m_Func = func;
1089 }
1090
1092 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
1093 {
1094 CheckParameters(args, caller);
1095
1096 yield return m_Func.Invoke(
1097 caller,
1098 GetParameter(args, 0).Unwrap<T1>(),
1099 GetParameter(args, 1).Unwrap<T2>(),
1100 GetParameter(args, 2).Unwrap<T3>(),
1101 GetParameter(args, 3).Unwrap<T4>(),
1102 GetParameter(args, 4).Unwrap<T5>(),
1103 GetParameter(args, 5).Unwrap<T6>(),
1104 GetParameter(args, 6).Unwrap<T7>(),
1105 GetParameter(args, 7).Unwrap<T8>(),
1106 GetParameter(args, 8).Unwrap<T9>(),
1107 GetParameter(args, 9).Unwrap<T10>(),
1108 GetParameter(args, 10).Unwrap<T11>(),
1109 GetParameter(args, 11).Unwrap<T12>(),
1110 GetParameter(args, 12).Unwrap<T13>()
1111 );
1112 }
1113
1120 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, BadObject> func)
1121 {
1123 null,
1124 func,
1126 typeof(T1).Name,
1127 typeof(T2).Name,
1128 typeof(T3).Name,
1129 typeof(T4).Name,
1130 typeof(T5).Name,
1131 typeof(T6).Name,
1132 typeof(T7).Name,
1133 typeof(T8).Name,
1134 typeof(T9).Name,
1135 typeof(T10).Name,
1136 typeof(T11).Name,
1137 typeof(T12).Name,
1138 typeof(T13).Name
1139 );
1140 }
1141}
1142
1160public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> : BadFunction
1161{
1165 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, BadObject>
1167
1176 BadWordToken? name,
1177 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, BadObject> func,
1178 BadClassPrototype returnType,
1179 params BadFunctionParameter[] parameters) : base(
1180 name,
1181 false,
1182 false,
1183 returnType, false,
1184 parameters
1185 )
1186 {
1187 m_Func = func;
1188 }
1189
1191 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
1192 {
1193 CheckParameters(args, caller);
1194
1195 yield return m_Func.Invoke(
1196 caller,
1197 GetParameter(args, 0).Unwrap<T1>(),
1198 GetParameter(args, 1).Unwrap<T2>(),
1199 GetParameter(args, 2).Unwrap<T3>(),
1200 GetParameter(args, 3).Unwrap<T4>(),
1201 GetParameter(args, 4).Unwrap<T5>(),
1202 GetParameter(args, 5).Unwrap<T6>(),
1203 GetParameter(args, 6).Unwrap<T7>(),
1204 GetParameter(args, 7).Unwrap<T8>(),
1205 GetParameter(args, 8).Unwrap<T9>(),
1206 GetParameter(args, 9).Unwrap<T10>(),
1207 GetParameter(args, 10).Unwrap<T11>(),
1208 GetParameter(args, 11).Unwrap<T12>(),
1209 GetParameter(args, 12).Unwrap<T13>(),
1210 GetParameter(args, 13).Unwrap<T14>()
1211 );
1212 }
1213
1219 public static implicit operator
1221 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, BadObject> func)
1222 {
1224 null,
1225 func,
1227 typeof(T1).Name,
1228 typeof(T2).Name,
1229 typeof(T3).Name,
1230 typeof(T4).Name,
1231 typeof(T5).Name,
1232 typeof(T6).Name,
1233 typeof(T7).Name,
1234 typeof(T8).Name,
1235 typeof(T9).Name,
1236 typeof(T10).Name,
1237 typeof(T11).Name,
1238 typeof(T12).Name,
1239 typeof(T13).Name,
1240 typeof(T14).Name
1241 );
1242 }
1243}
1244
1263public class BadDynamicInteropFunction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> : BadFunction
1264{
1268 private readonly Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15,
1270
1279 BadWordToken? name,
1280 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, BadObject> func,
1281 BadClassPrototype returnType,
1282 params BadFunctionParameter[] parameters) : base(
1283 name,
1284 false,
1285 false,
1286 returnType, false,
1287 parameters
1288 )
1289 {
1290 m_Func = func;
1291 }
1292
1294 protected override IEnumerable<BadObject> InvokeBlock(BadObject[] args, BadExecutionContext caller)
1295 {
1296 CheckParameters(args, caller);
1297
1298 yield return m_Func.Invoke(
1299 caller,
1300 GetParameter(args, 0).Unwrap<T1>(),
1301 GetParameter(args, 1).Unwrap<T2>(),
1302 GetParameter(args, 2).Unwrap<T3>(),
1303 GetParameter(args, 3).Unwrap<T4>(),
1304 GetParameter(args, 4).Unwrap<T5>(),
1305 GetParameter(args, 5).Unwrap<T6>(),
1306 GetParameter(args, 6).Unwrap<T7>(),
1307 GetParameter(args, 7).Unwrap<T8>(),
1308 GetParameter(args, 8).Unwrap<T9>(),
1309 GetParameter(args, 9).Unwrap<T10>(),
1310 GetParameter(args, 10).Unwrap<T11>(),
1311 GetParameter(args, 11).Unwrap<T12>(),
1312 GetParameter(args, 12).Unwrap<T13>(),
1313 GetParameter(args, 13).Unwrap<T14>(),
1314 GetParameter(args, 14).Unwrap<T15>()
1315 );
1316 }
1317
1323 public static implicit operator
1325 Func<BadExecutionContext, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, BadObject> func)
1326 {
1328 null,
1329 func,
1331 typeof(T1).Name,
1332 typeof(T2).Name,
1333 typeof(T3).Name,
1334 typeof(T4).Name,
1335 typeof(T5).Name,
1336 typeof(T6).Name,
1337 typeof(T7).Name,
1338 typeof(T8).Name,
1339 typeof(T9).Name,
1340 typeof(T10).Name,
1341 typeof(T11).Name,
1342 typeof(T12).Name,
1343 typeof(T13).Name,
1344 typeof(T14).Name,
1345 typeof(T15).Name
1346 );
1347 }
1348}
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