diff --git a/port/linux/boot/banchmark/main.c b/port/linux/boot/banchmark/main.c index bd247fed0..02ab338ec 100644 --- a/port/linux/boot/banchmark/main.c +++ b/port/linux/boot/banchmark/main.c @@ -67,9 +67,9 @@ void checker_objMemChecker(PikaObj *(*NewFun)(Args *), char *objName) int32_t main() { - checker_objMemChecker(TinyObj, "tiny"); - checker_objMemChecker(BaseObj, "base"); - checker_objMemChecker(PikaStdLib_SysObj, "sys"); + checker_objMemChecker(New_TinyObj, "tiny"); + checker_objMemChecker(New_BaseObj, "base"); + checker_objMemChecker(New_PikaStdLib_SysObj, "sys"); { Arg *arg = New_arg(NULL); checker_printMemUsage("void arg"); diff --git a/port/linux/boot/demo01-led/main.c b/port/linux/boot/demo01-led/main.c index 9f785751e..cde3f0baf 100644 --- a/port/linux/boot/demo01-led/main.c +++ b/port/linux/boot/demo01-led/main.c @@ -20,7 +20,7 @@ PikaObj *New_LED(Args *args) /* Derive from the tiny object class. Tiny object can not import sub object. Tiny object is the smallest object. */ - PikaObj *self = TinyObj(args); + PikaObj *self = New_TinyObj(args); /* bind the method */ class_defineMethod(self, "on()", onMethod); @@ -35,7 +35,7 @@ PikaObj *New_MYROOT(Args *args) /* Derive from the base object class . BaseObj is the smallest object that can import sub object. */ - PikaObj *self = BaseObj(args); + PikaObj *self = New_BaseObj(args); /* new led object bellow root object */ obj_newObj(self, "led", "LED", New_LED); diff --git a/port/linux/boot/demo02-add/main.c b/port/linux/boot/demo02-add/main.c index ccf5cf12c..043bc14c3 100644 --- a/port/linux/boot/demo02-add/main.c +++ b/port/linux/boot/demo02-add/main.c @@ -16,7 +16,7 @@ PikaObj *New_TEST(Args *args) /* Derive from the tiny object class. Tiny object can not import sub object. Tiny object is the smallest object. */ - PikaObj *self = TinyObj(args); + PikaObj *self = New_TinyObj(args); /* bind the method */ class_defineMethod(self, "add(val1:int, val2:int)->int", addMethod); @@ -30,7 +30,7 @@ PikaObj *New_MYROOT(Args *args) /* Derive from the base object class . BaseObj is the smallest object that can import sub object. */ - PikaObj *self = BaseObj(args); + PikaObj *self = New_BaseObj(args); /* new led object bellow root object */ obj_newObj(self, "test", "TEST", New_TEST); diff --git a/port/linux/boot/demo03-usart/main.c b/port/linux/boot/demo03-usart/main.c index 9964b6c0a..b94c3eb1b 100644 --- a/port/linux/boot/demo03-usart/main.c +++ b/port/linux/boot/demo03-usart/main.c @@ -15,7 +15,7 @@ PikaObj *New_USART(Args *args) /* Derive from the tiny object class. Tiny object can not import sub object. Tiny object is the smallest object. */ - PikaObj *self = TinyObj(args); + PikaObj *self = New_TinyObj(args); /* bind the method */ class_defineMethod(self, "send(data:str)", sendMethod); @@ -29,7 +29,7 @@ PikaObj *New_MYROOT(Args *args) /* Derive from the base object class . BaseObj is the smallest object that can import sub object. */ - PikaObj *self = BaseObj(args); + PikaObj *self = New_BaseObj(args); /* new led object bellow root object */ obj_newObj(self, "usart", "USART", New_USART); diff --git a/port/linux/boot/demo04-usarts/main.c b/port/linux/boot/demo04-usarts/main.c index 062f0b609..93c2cf090 100644 --- a/port/linux/boot/demo04-usarts/main.c +++ b/port/linux/boot/demo04-usarts/main.c @@ -27,7 +27,7 @@ PikaObj *New_USART(Args *args) /* Derive from the tiny object class. Tiny object can not import sub object. Tiny object is the smallest object. */ - PikaObj *self = TinyObj(args); + PikaObj *self = New_TinyObj(args); /* setArgs */ obj_setInt(self, "speed", 9600); @@ -65,7 +65,7 @@ PikaObj *New_MYROOT(Args *args) /* Derive from the base object class . BaseObj is the smallest object that can import sub object. */ - PikaObj *self = BaseObj(args); + PikaObj *self = New_BaseObj(args); /* new object bellow root object */ obj_newObj(self, "usart1", "USART", New_USART); diff --git a/port/linux/boot/demo05-sysobject/main.c b/port/linux/boot/demo05-sysobject/main.c index 598826866..a67a757b4 100644 --- a/port/linux/boot/demo05-sysobject/main.c +++ b/port/linux/boot/demo05-sysobject/main.c @@ -11,7 +11,7 @@ void obj_runWithInfo(PikaObj *self, char *cmd) int main() { /* new root object */ - PikaObj *root = newRootObj("root", PikaStdLib_SysObj); + PikaObj *root = newRootObj("root", New_PikaStdLib_SysObj); obj_runWithInfo(root, "set('a',1)"); obj_runWithInfo(root, "print(a)"); diff --git a/port/linux/package/pikascript/rust-msc-latest-linux b/port/linux/package/pikascript/rust-msc-latest-linux index b22909d3c..c3789081b 100755 Binary files a/port/linux/package/pikascript/rust-msc-latest-linux and b/port/linux/package/pikascript/rust-msc-latest-linux differ diff --git a/port/linux/test/VM-test.cpp b/port/linux/test/VM-test.cpp index e6c18a0c1..d2fc950cc 100644 --- a/port/linux/test/VM-test.cpp +++ b/port/linux/test/VM-test.cpp @@ -15,7 +15,7 @@ TEST(VM, num1) { Args* buffs = New_strBuff(); char* pikaAsm = pikaParseLineToAsm(buffs, line, NULL); printf("%s", pikaAsm); - PikaObj* self = newRootObj((char*)"root", PikaStdLib_SysObj); + PikaObj* self = newRootObj((char*)"root", New_PikaStdLib_SysObj); args_deinit(pikaVM_runAsm(self, pikaAsm)); obj_deinit(self); args_deinit(buffs); @@ -27,7 +27,7 @@ TEST(VM, a_1) { Args* buffs = New_strBuff(); char* pikaAsm = pikaParseLineToAsm(buffs, line, NULL); printf("%s", pikaAsm); - PikaObj* self = newRootObj((char*)"root", PikaStdLib_SysObj); + PikaObj* self = newRootObj((char*)"root", New_PikaStdLib_SysObj); args_deinit(pikaVM_runAsm(self, pikaAsm)); ASSERT_EQ(obj_getInt(self, (char*)"a"), 1); @@ -42,7 +42,7 @@ TEST(VM, a_1d1) { Args* buffs = New_strBuff(); char* pikaAsm = pikaParseLineToAsm(buffs, line, NULL); printf("%s", pikaAsm); - PikaObj* self = newRootObj((char*)"root", PikaStdLib_SysObj); + PikaObj* self = newRootObj((char*)"root", New_PikaStdLib_SysObj); args_deinit(pikaVM_runAsm(self, pikaAsm)); ASSERT_FLOAT_EQ(obj_getFloat(self, (char*)"a"), 1.1); @@ -57,7 +57,7 @@ TEST(VM, str_xy) { Args* buffs = New_strBuff(); char* pikaAsm = pikaParseLineToAsm(buffs, line, NULL); printf("%s", pikaAsm); - PikaObj* self = newRootObj((char*)"root", PikaStdLib_SysObj); + PikaObj* self = newRootObj((char*)"root", New_PikaStdLib_SysObj); args_deinit(pikaVM_runAsm(self, pikaAsm)); ASSERT_STREQ(obj_getStr(self, (char*)"a"), (char*)"xy"); @@ -72,7 +72,7 @@ TEST(VM, str_xy_space) { Args* buffs = New_strBuff(); char* pikaAsm = pikaParseLineToAsm(buffs, line, NULL); printf("%s", pikaAsm); - PikaObj* self = newRootObj((char*)"root", PikaStdLib_SysObj); + PikaObj* self = newRootObj((char*)"root", New_PikaStdLib_SysObj); args_deinit(pikaVM_runAsm(self, pikaAsm)); ASSERT_STREQ(obj_getStr(self, (char*)"a"), (char*)"xy "); @@ -83,7 +83,7 @@ TEST(VM, str_xy_space) { } TEST(VM, ref_a_b) { - PikaObj* self = newRootObj((char*)"root", PikaStdLib_SysObj); + PikaObj* self = newRootObj((char*)"root", New_PikaStdLib_SysObj); Args* buffs = New_strBuff(); args_deinit(pikaVM_runAsm( @@ -98,7 +98,7 @@ TEST(VM, ref_a_b) { } TEST(VM, Run_add) { - PikaObj* self = newRootObj((char*)"root", PikaMath_Operator); + PikaObj* self = newRootObj((char*)"root", New_PikaMath_Operator); Args* buffs = New_strBuff(); args_deinit(pikaVM_runAsm( @@ -112,7 +112,7 @@ TEST(VM, Run_add) { } TEST(VM, Run_add_multy) { - PikaObj* self = newRootObj((char*)"root", PikaMath_Operator); + PikaObj* self = newRootObj((char*)"root", New_PikaMath_Operator); Args* buffs = New_strBuff(); args_deinit( @@ -128,7 +128,7 @@ TEST(VM, Run_add_multy) { } TEST(VM, Run_add_1_2_3) { - PikaObj* self = newRootObj((char*)"root", PikaMath_Operator); + PikaObj* self = newRootObj((char*)"root", New_PikaMath_Operator); Args* buffs = New_strBuff(); args_deinit(pikaVM_runAsm( @@ -149,7 +149,7 @@ TEST(VM, JEZ) { "0 JEZ 2\n" "B0\n" "B0\n"; - PikaObj* self = TinyObj(NULL); + PikaObj* self = New_TinyObj(NULL); int lineAddr = 0; int size = strGetSize(pikaAsm); Args* sysRes = New_args(NULL); @@ -171,7 +171,7 @@ TEST(VM, JMP) { "0 JMP 2\n" "B0\n" "B0\n"; - PikaObj* self = TinyObj(NULL); + PikaObj* self = New_TinyObj(NULL); int lineAddr = 0; int size = strGetSize(pikaAsm); Args* sysRes = New_args(NULL); @@ -193,7 +193,7 @@ TEST(VM, JMP_back1) { "0 JMP -1\n" "B0\n" "B0\n"; - PikaObj* self = TinyObj(NULL); + PikaObj* self = New_TinyObj(NULL); int lineAddr = 0; int size = strGetSize(pikaAsm); Args* sysRes = New_args(NULL); @@ -224,7 +224,7 @@ TEST(VM, WHILE) { char* pikaAsm = pikaParseMultiLineToAsm(buffs, (char*)lines); printf("%s", pikaAsm); pikaMemInfo.heapUsedMax = 0; - PikaObj* self = TinyObj(NULL); + PikaObj* self = New_TinyObj(NULL); Args* runRes = pikaVM_runAsm(self, pikaAsm); EXPECT_EQ(obj_getInt(self, (char*)"a"), 0); EXPECT_EQ(obj_getInt(self, (char*)"b"), 1); diff --git a/port/linux/test/object-test.cpp b/port/linux/test/object-test.cpp index 44fe7390c..4705832b9 100644 --- a/port/linux/test/object-test.cpp +++ b/port/linux/test/object-test.cpp @@ -43,7 +43,7 @@ void add(PikaObj* obj, Args* args) { } PikaObj* New_PikaObj_test(Args* args) { - PikaObj* self = PikaStdLib_SysObj(args); + PikaObj* self = New_PikaStdLib_SysObj(args); class_defineMethod(self, (char*)"hello(name:str, isShow:int)", hello); class_defineMethod( self, (char*)"hello2(name1:str, name2:str, name3:str, isShow:int)", @@ -65,7 +65,7 @@ PikaObj* New_USART(Args* args) { /* Derive from the tiny object class. Tiny object can not import sub object. Tiny object is the smallest object. */ - PikaObj* self = TinyObj(args); + PikaObj* self = New_TinyObj(args); /* bind the method */ class_defineMethod(self, (char*)"send(data:str)", sendMethod); @@ -78,7 +78,7 @@ PikaObj* New_MYROOT1(Args* args) { /* Derive from the base object class . BaseObj is the smallest object that can import sub object. */ - PikaObj* self = BaseObj(args); + PikaObj* self = New_BaseObj(args); /* new led object bellow root object */ obj_newObj(self, (char*)"usart", (char*)"USART", (NewFun)New_USART); @@ -98,7 +98,7 @@ TEST(object_test, test10) { } TEST(object_test, test1) { - PikaObj* process = newRootObj((char*)"sys", PikaStdLib_SysObj); + PikaObj* process = newRootObj((char*)"sys", New_PikaStdLib_SysObj); float floatTest = 12.231; obj_bindFloat(process, (char*)"testFloatBind", &floatTest); EXPECT_TRUE( @@ -137,7 +137,7 @@ TEST(object_test, test6) { } TEST(object_test, test8) { - PikaObj* sys = newRootObj((char*)"sys", PikaStdLib_SysObj); + PikaObj* sys = newRootObj((char*)"sys", New_PikaStdLib_SysObj); obj_run(sys, (char*)"a=1"); obj_run(sys, (char*)"remove('a')"); obj_deinit(sys); @@ -145,9 +145,9 @@ TEST(object_test, test8) { } TEST(object_test, test9) { - PikaObj* sys = newRootObj((char*)"sys", PikaStdLib_SysObj); + PikaObj* sys = newRootObj((char*)"sys", New_PikaStdLib_SysObj); obj_run(sys, (char*)"ls()"); - obj_setPtr(sys, (char*)"baseClass", (void*)TinyObj); + obj_setPtr(sys, (char*)"baseClass", (void*)New_TinyObj); obj_run(sys, (char*)"ls()"); obj_deinit(sys); EXPECT_EQ(pikaMemNow(), 0); @@ -176,7 +176,7 @@ TEST(object_test, voidRun) { } TEST(object_test, printa) { - PikaObj* root = newRootObj((char*)"root", BaseObj); + PikaObj* root = newRootObj((char*)"root", New_BaseObj); obj_run(root, (char*)"a = 2"); obj_run(root, (char*)"print(a)"); char* sysOut = obj_getSysOut(root); @@ -186,7 +186,7 @@ TEST(object_test, printa) { } TEST(object_test, copyArg) { - PikaObj* root = newRootObj((char*)"root", BaseObj); + PikaObj* root = newRootObj((char*)"root", New_BaseObj); Arg* arg = New_arg(NULL); arg = arg_setInt(arg, (char*)"a", 1); obj_setArg(root, (char*)"a", arg); diff --git a/port/linux/test/queue-test.cpp b/port/linux/test/queue-test.cpp index b02d81e67..a62418f47 100644 --- a/port/linux/test/queue-test.cpp +++ b/port/linux/test/queue-test.cpp @@ -65,14 +65,14 @@ TEST(queue, str) { } TEST(queueObj, init) { - QueueObj* q = TinyObj(NULL); + QueueObj* q = New_TinyObj(NULL); queueObj_init(q); obj_deinit(q); EXPECT_EQ(pikaMemNow(), 0); } TEST(queueObj, INT) { - QueueObj* q = TinyObj(NULL); + QueueObj* q = New_TinyObj(NULL); queueObj_init(q); queueObj_pushInt(q, 1); queueObj_pushInt(q, 2); @@ -85,7 +85,7 @@ TEST(queueObj, INT) { } TEST(queueObj, FLOAT) { - QueueObj* q = TinyObj(NULL); + QueueObj* q = New_TinyObj(NULL); queueObj_init(q); queueObj_pushFloat(q, 1.1f); queueObj_pushFloat(q, 2.2f); @@ -98,7 +98,7 @@ TEST(queueObj, FLOAT) { } TEST(queueObj, str) { - QueueObj* q = TinyObj(NULL); + QueueObj* q = New_TinyObj(NULL); queueObj_init(q); queueObj_pushStr(q, (char*)"abc"); queueObj_pushStr(q, (char*)"123"); @@ -111,7 +111,7 @@ TEST(queueObj, str) { } TEST(queueObj, obj) { - QueueObj* q = TinyObj(NULL); + QueueObj* q = New_TinyObj(NULL); queueObj_init(q); queueObj_pushObj(q, (char*)"type1"); queueObj_pushObj(q, (char*)"type2"); @@ -129,7 +129,7 @@ TEST(queueObj, obj) { } TEST(queueObj, currentObj) { - QueueObj* q = TinyObj(NULL); + QueueObj* q = New_TinyObj(NULL); queueObj_init(q); queueObj_pushObj(q, (char*)"type1"); diff --git a/port/linux/test/sysObj-test.cpp b/port/linux/test/sysObj-test.cpp index 811d503fc..c89e4f27a 100644 --- a/port/linux/test/sysObj-test.cpp +++ b/port/linux/test/sysObj-test.cpp @@ -6,7 +6,7 @@ extern "C" { } TEST(sysObj, print) { - PikaObj* obj = newRootObj((char*)"test", PikaStdLib_SysObj); + PikaObj* obj = newRootObj((char*)"test", New_PikaStdLib_SysObj); Args* res = obj_runDirect(obj, (char*)"print('hello world')"); char* sysOut = args_getSysOut(res); int errCode = args_getErrorCode(res); @@ -19,7 +19,7 @@ TEST(sysObj, print) { } TEST(sysObj, noMethod) { - PikaObj* obj = newRootObj((char*)"test", PikaStdLib_SysObj); + PikaObj* obj = newRootObj((char*)"test", New_PikaStdLib_SysObj); Args* res = obj_runDirect(obj, (char*)"printttt('hello world')"); char* sysOut = args_getSysOut(res); int errCode = args_getErrorCode(res); diff --git a/src/BaseObj.c b/src/BaseObj.c index b6ad18e60..3f032caeb 100644 --- a/src/BaseObj.c +++ b/src/BaseObj.c @@ -28,15 +28,12 @@ int32_t obj_newObj(PikaObj* self, char* objName, char* className, NewFun newFunPtr) { - /* class means subprocess init */ - /* add mate Obj, no inited */ Arg* mateObj = arg_setMetaObj(objName, className, newFunPtr); args_setArg(self->attributeList, mateObj); return 0; } - static void print(PikaObj* self, Args* args) { obj_setErrorCode(self, 0); char* res = args_print(args, "val"); @@ -49,8 +46,8 @@ static void print(PikaObj* self, Args* args) { obj_setSysOut(self, res); } -PikaObj* BaseObj(Args* args) { - PikaObj* self = TinyObj(args); +PikaObj* New_BaseObj(Args* args) { + PikaObj* self = New_TinyObj(args); class_defineMethod(self, "print(val:any)", print); return self; } diff --git a/src/BaseObj.h b/src/BaseObj.h index 1e4320086..252e5600d 100644 --- a/src/BaseObj.h +++ b/src/BaseObj.h @@ -9,7 +9,7 @@ #include "TinyObj.h" #include "dataMemory.h" -PikaObj* BaseObj(Args* args); +PikaObj* New_BaseObj(Args* args); int32_t obj_newObjFromClassLoader(PikaObj* self, char* objPath, char* classPath); diff --git a/src/PikaParser.c b/src/PikaParser.c index 49c4ff9bd..853729d67 100644 --- a/src/PikaParser.c +++ b/src/PikaParser.c @@ -150,7 +150,7 @@ AST* pikaParseLine(char* line, Stack* blockStack) { for (int i = 0; i < blockDeepthLast - blockDeepth; i++) { QueueObj* exitBlock = obj_getObj(ast, "exitBlock", 0); if (NULL == exitBlock) { - obj_newObj(ast, "exitBlock", "", TinyObj); + obj_newObj(ast, "exitBlock", "", New_TinyObj); exitBlock = obj_getObj(ast, "exitBlock", 0); queueObj_init(exitBlock); } diff --git a/src/TinyObj.c b/src/TinyObj.c index 28eb2fd5d..fdd824a1d 100644 --- a/src/TinyObj.c +++ b/src/TinyObj.c @@ -13,7 +13,7 @@ void _beforDinit(PikaObj* self) { /* override in user code */ } -PikaObj* TinyObj(Args* args) { +PikaObj* New_TinyObj(Args* args) { PikaObj* self = pikaMalloc(sizeof(PikaObj)); /* List */ diff --git a/src/TinyObj.h b/src/TinyObj.h index 0cc185e38..2e5049f57 100644 --- a/src/TinyObj.h +++ b/src/TinyObj.h @@ -6,5 +6,5 @@ #ifndef __TYNYOBJ__H #define __TYNYOBJ__H #include "PikaObj.h" -PikaObj* TinyObj(Args* args); +PikaObj* New_TinyObj(Args* args); #endif diff --git a/src/dataQueueObj.c b/src/dataQueueObj.c index 21338dd88..74d5a5fe6 100644 --- a/src/dataQueueObj.c +++ b/src/dataQueueObj.c @@ -2,7 +2,7 @@ #include "BaseObj.h" #include "dataQueue.h" QueueObj* New_queueObj() { - PikaObj* self = TinyObj(NULL); + PikaObj* self = New_TinyObj(NULL); queueObj_init(self); return self; } @@ -19,7 +19,7 @@ int32_t queueObj_pushObj(QueueObj* self, char* className) { char *topStr = fast_itoa(buff, top); /* add top */ obj_setInt(self, "top", top + 1); - return obj_newObj(self, topStr, className, TinyObj); + return obj_newObj(self, topStr, className, New_TinyObj); } PikaObj* queueObj_getCurrentObj(QueueObj* self) { diff --git a/tools/pikaCompiler/src/class_info.rs b/tools/pikaCompiler/src/class_info.rs index 42ab019b0..94e17c617 100644 --- a/tools/pikaCompiler/src/class_info.rs +++ b/tools/pikaCompiler/src/class_info.rs @@ -112,7 +112,7 @@ impl ClassInfo { pub fn script_fn(&self) -> String { let mut script_fn = String::new(); script_fn.push_str("PikaObj * pikaScriptInit(){\r\n"); - script_fn.push_str(" PikaObj * pikaMain = newRootObj(\"pikaMain\", PikaMain);\r\n"); + script_fn.push_str(" PikaObj * pikaMain = newRootObj(\"pikaMain\", New_PikaMain);\r\n"); script_fn.push_str(&self.script_list.content); script_fn.push_str(" obj_run(pikaMain, \"\");\r\n"); script_fn.push_str(" return pikaMain;\r\n"); @@ -124,7 +124,7 @@ impl ClassInfo { let mut new_class_fn = String::new(); let new_class_fn_head = format!("{}{{\n", self.new_class_fn_name()); new_class_fn.push_str(&new_class_fn_head); - let derive = format!(" PikaObj *self = {}(args);\n", self.super_class_name); + let derive = format!(" PikaObj *self = New_{}(args);\n", self.super_class_name); new_class_fn.push_str(&derive); for (_, import_info) in self.import_list.iter() { new_class_fn.push_str(&import_info.import_fn()); @@ -143,7 +143,7 @@ impl ClassInfo { } pub fn new_class_fn_name(&self) -> String { - return format!("PikaObj *{}(Args *args)", self.this_class_name); + return format!("PikaObj *New_{}(Args *args)", self.this_class_name); } pub fn method_impl_declear(&self) -> String { diff --git a/tools/pikaCompiler/src/import_info.rs b/tools/pikaCompiler/src/import_info.rs index 0d108f3bd..6b471f58a 100644 --- a/tools/pikaCompiler/src/import_info.rs +++ b/tools/pikaCompiler/src/import_info.rs @@ -29,7 +29,7 @@ impl ImportInfo { } pub fn import_fn(&self) -> String { return format!( - " obj_import(self, \"{}\", {});\n", + " obj_import(self, \"{}\", New_{});\n", self.import_class_name, self.import_class_name ); } diff --git a/tools/pikaCompiler/src/object_info.rs b/tools/pikaCompiler/src/object_info.rs index 1f87f3985..4f3396726 100644 --- a/tools/pikaCompiler/src/object_info.rs +++ b/tools/pikaCompiler/src/object_info.rs @@ -36,7 +36,7 @@ impl ObjectInfo { let mut new_object_fn = String::new(); /* do not generate new object for pikaMain class */ let new_fn = format!( - " obj_newObj(self, \"{}\", \"{}\", {});\n", + " obj_newObj(self, \"{}\", \"{}\", New_{});\n", self.name, self.import_class_name, self.import_class_name ); new_object_fn.push_str(&new_fn);