anytype.sl
来自「一个C格式的脚本处理函数库源代码,可让你的C程序具有执行C格式的脚本文件」· SL 代码 · 共 64 行
SL
64 行
_debug_info = 1; () = evalfile ("inc.sl");print ("Testing Any_Type ...");% Tests go here....variable A = Any_Type[10];if ((_typeof(A)) != Any_Type) failed ("_typeof");static define eqs (a, b){ variable len; len = length (a); if (len != length (b)) return 0; len == length (where (a == b));}static define neqs (a, b){ not (eqs (a, b));}static define check (a, i, value){ a[i] = value; if (typeof (a[i]) != Any_Type) failed ("check typeof"); % Because value can be an array, use neqs if (neqs(@a[i], value)) failed ("a[i] = value for %S, computed: %S", value, @a[i]);}check (A, 0, "hello");check (A, 0, 14);#ifexists Double_Typecheck (A, 0, 2.3);#endifcheck (A, 0, &A);check (A, 0, [1:10]);#ifexists Complex_Typecheck (A, 0, 1+2i);#endifcheck (A, 0, String_Type);A = ["a", "ab", "abc"];static variable B = typecast (A, Any_Type);if ((typeof (B) != Array_Type) or (_typeof(B) != Any_Type)) failed ("typecast to Any_Type");_for (0, length(B)-1, 1){ $1 = (); if (A[$1] != @B[$1]) failed ("@typecast(A,Any_Type)");} print ("Ok\n");exit (0);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?