nspace.sl

来自「一个C格式的脚本处理函数库源代码,可让你的C程序具有执行C格式的脚本文件」· SL 代码 · 共 94 行

SL
94 行
字号
_debug_info = 1; () = evalfile ("inc.sl");print ("Testing NameSpace routines ...");if (current_namespace () != "")  failed ("current_namespace - 1");implements ("NSpace");% From this point on, define and variable defaults to static if (current_namespace () != "NSpace")  failed ("current_namespace - 2");define static_function (){   "static_function";}variable static_variable = "static_variable";public define public_function (){   "public_function";}public variable public_variable = "public_variable";private define private_function (){   "private_function";}private variable private_variable = "private_variable";!if (is_defined ("Global->public_function")) failed ("public_function");!if (is_defined ("Global->public_variable")) failed ("public_variable");!if (is_defined ("public_function")) failed ("public_function");!if (is_defined ("public_variable")) failed ("public_variable");!if (is_defined ("NSpace->static_function")) failed ("static_function");!if (is_defined ("NSpace->static_variable")) failed ("static_variable");if (is_defined ("NSpace->private_function")) failed ("private_function");if (is_defined ("NSpace->private_variable")) failed ("private_variable");if (static_variable != NSpace->static_variable) failed ("static_variable test");if (public_variable != Global->public_variable) failed ("public_variable test");if (private_variable != "private_variable") failed ("private_variable test");public variable This_Namespace;This_Namespace = "NS1";() = evalfile ("ns1.inc");This_Namespace = "NS2";() = evalfile ("ns2.inc");use_namespace ("NS1");if (func () != "NS1")  failed ("use_namespace 1");define func1 (){   return "1";}use_namespace ("NS2");if (func () != "NS2")  failed ("use_namespace 2");define func1 (){   return "2";}use_namespace ("Global");if (is_defined ("func"))  failed ("use_namespace Global");define func1 (){   return "3";}!if (is_defined ("func1"))  failed ("use_namespace Global: func1");if (NS1->func () != "NS1")  failed ("NS1->func");if (NS2->func () != "NS2")  failed ("NS2->func");if (NS1->func1 () != "1")  failed ("NS1->func1");if (NS2->func1 () != "2")  failed ("NS2->func1");if (Global->func1 () != "3")  failed ("Global->func1");if (length (_get_namespaces ()) != 4)  %  Global, NS1, NS2, NSpace  failed ("_get_namespaces: %S", _get_namespaces());print ("Ok\n");exit (0);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?