|
25 | 25 |
|
26 | 26 | /* clang-format off */ |
27 | 27 | // Math |
28 | | -PS_SYSTEM_FUNCTION (function , abs , "ABS" , .func_1arg , &ps_function_abs ); |
29 | | -PS_SYSTEM_FUNCTION (function , arctan , "ARCTAN" , .func_1arg , &ps_function_arctan ); |
30 | | -PS_SYSTEM_FUNCTION (function , cos , "COS" , .func_1arg , &ps_function_cos ); |
31 | | -PS_SYSTEM_FUNCTION (function , even , "EVEN" , .func_1arg , &ps_function_even ); |
32 | | -PS_SYSTEM_FUNCTION (function , exp , "EXP" , .func_1arg , &ps_function_exp ); |
33 | | -PS_SYSTEM_FUNCTION (function , frac , "FRAC" , .func_1arg , &ps_function_frac ); |
34 | | -PS_SYSTEM_FUNCTION (function , int , "INT" , .func_1arg , &ps_function_int ); |
35 | | -PS_SYSTEM_FUNCTION (function , ln , "LN" , .func_1arg , &ps_function_ln ); |
36 | | -PS_SYSTEM_FUNCTION (function , log , "LOG" , .func_1arg , &ps_function_log ); |
37 | | -PS_SYSTEM_FUNCTION (function , odd , "ODD" , .func_1arg , &ps_function_odd ); |
38 | | -PS_SYSTEM_FUNCTION (function , power , "POWER" , .func_2args , &ps_function_power ); |
39 | | -PS_SYSTEM_FUNCTION (function , random , "RANDOM" , .func_1arg , &ps_function_random ); |
40 | | -PS_SYSTEM_FUNCTION (function , round , "ROUND" , .func_1arg , &ps_function_round ); |
41 | | -PS_SYSTEM_FUNCTION (function , sin , "SIN" , .func_1arg , &ps_function_sin ); |
42 | | -PS_SYSTEM_FUNCTION (function , sqr , "SQR" , .func_1arg , &ps_function_sqr ); |
43 | | -PS_SYSTEM_FUNCTION (function , sqrt , "SQRT" , .func_1arg , &ps_function_sqrt ); |
44 | | -PS_SYSTEM_FUNCTION (function , succ , "SUCC" , .func_1arg , &ps_function_succ ); |
45 | | -PS_SYSTEM_FUNCTION (function , tan , "TAN" , .func_1arg , &ps_function_tan ); |
46 | | -PS_SYSTEM_FUNCTION (function , trunc , "TRUNC" , .func_1arg , &ps_function_trunc ); |
| 28 | +PS_SYSTEM_FUNCTION (function, abs , "ABS" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_abs ); |
| 29 | +PS_SYSTEM_FUNCTION (function, arctan , "ARCTAN" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_arctan ); |
| 30 | +PS_SYSTEM_FUNCTION (function, cos , "COS" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_cos ); |
| 31 | +PS_SYSTEM_FUNCTION (function, even , "EVEN" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_even ); |
| 32 | +PS_SYSTEM_FUNCTION (function, exp , "EXP" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_exp ); |
| 33 | +PS_SYSTEM_FUNCTION (function, frac , "FRAC" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_frac ); |
| 34 | +PS_SYSTEM_FUNCTION (function, int , "INT" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_int ); |
| 35 | +PS_SYSTEM_FUNCTION (function, ln , "LN" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_ln ); |
| 36 | +PS_SYSTEM_FUNCTION (function, log , "LOG" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_log ); |
| 37 | +PS_SYSTEM_FUNCTION (function, odd , "ODD" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_odd ); |
| 38 | +PS_SYSTEM_FUNCTION (function, power , "POWER" , PS_EXECUTABLE_FUNC_1ARG_S, .func_2args , &ps_function_power ); |
| 39 | +PS_SYSTEM_FUNCTION (function, random , "RANDOM" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_random ); |
| 40 | +PS_SYSTEM_FUNCTION (function, round , "ROUND" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_round ); |
| 41 | +PS_SYSTEM_FUNCTION (function, sin , "SIN" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_sin ); |
| 42 | +PS_SYSTEM_FUNCTION (function, sqr , "SQR" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_sqr ); |
| 43 | +PS_SYSTEM_FUNCTION (function, sqrt , "SQRT" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_sqrt ); |
| 44 | +PS_SYSTEM_FUNCTION (function, succ , "SUCC" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_succ ); |
| 45 | +PS_SYSTEM_FUNCTION (function, tan , "TAN" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_tan ); |
| 46 | +PS_SYSTEM_FUNCTION (function, trunc , "TRUNC" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_trunc ); |
47 | 47 | // Ordinal |
48 | | -PS_SYSTEM_FUNCTION (function , chr , "CHR" , .func_1arg , &ps_function_chr ); |
49 | | -PS_SYSTEM_FUNCTION (function , high , "HIGH" , .func_1arg_s , &ps_function_high ); |
50 | | -PS_SYSTEM_FUNCTION (function , low , "LOW" , .func_1arg_s , &ps_function_low ); |
51 | | -PS_SYSTEM_FUNCTION (function , ord , "ORD" , .func_1arg , &ps_function_ord ); |
52 | | -PS_SYSTEM_FUNCTION (function , pred , "PRED" , .func_1arg , &ps_function_pred ); |
| 48 | +PS_SYSTEM_FUNCTION (function, chr , "CHR" , PS_EXECUTABLE_FUNC_1ARG, .func_1arg , &ps_function_chr ); |
| 49 | +PS_SYSTEM_FUNCTION (function, high , "HIGH" , PS_EXECUTABLE_FUNC_1ARG_S, .func_1arg_s, &ps_function_high ); |
| 50 | +PS_SYSTEM_FUNCTION (function, low , "LOW" , PS_EXECUTABLE_FUNC_1ARG_S, .func_1arg_s, &ps_function_low ); |
| 51 | +PS_SYSTEM_FUNCTION (function, ord , "ORD" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_ord ); |
| 52 | +PS_SYSTEM_FUNCTION (function, pred , "PRED" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_pred ); |
53 | 53 | // String |
54 | | -PS_SYSTEM_FUNCTION (function , length , "LENGTH" , .func_1arg , &ps_function_length ); |
55 | | -PS_SYSTEM_FUNCTION (function , lowercase , "LOWERCASE" , .func_1arg , &ps_function_lowercase ); |
56 | | -PS_SYSTEM_FUNCTION (function , uppercase , "UPPERCASE" , .func_1arg , &ps_function_uppercase ); |
| 54 | +PS_SYSTEM_FUNCTION (function, length , "LENGTH" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_length ); |
| 55 | +PS_SYSTEM_FUNCTION (function, lowercase , "LOWERCASE" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_lowercase ); |
| 56 | +PS_SYSTEM_FUNCTION (function, uppercase , "UPPERCASE" , PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_uppercase ); |
57 | 57 | // System |
58 | | -PS_SYSTEM_FUNCTION (function , get_tick_count, "GETTICKCOUNT", .func_1arg , &ps_function_get_tick_count ); |
| 58 | +PS_SYSTEM_FUNCTION (function, get_tick_count, "GETTICKCOUNT", PS_EXECUTABLE_FUNC_1ARG , .func_1arg , &ps_function_get_tick_count); |
59 | 59 | /* clang-format on */ |
60 | 60 |
|
61 | 61 | bool ps_functions_init(ps_symbol_table *system) |
@@ -282,7 +282,7 @@ ps_error ps_function_low_or_high_subrange(const ps_symbol *type, ps_value *resul |
282 | 282 | result->data.u = low ? type_def->def.g.u.min : type_def->def.g.u.max; |
283 | 283 | break; |
284 | 284 | case PS_TYPE_ENUM: |
285 | | - result->type = type; |
| 285 | + result->type = (ps_symbol *)type; |
286 | 286 | result->data.u = low ? type_def->def.g.e.min : type_def->def.g.e.max; |
287 | 287 | break; |
288 | 288 | default: |
|
0 commit comments