自己实现代码生成器 Implement your own code generator(2)完结篇
续上。废话少说,我们先看看最后生成的Python脚本框架是什么样子的。
#IOrders interface
class IOrders:
#Get the newest orders info
#IOrders GetCurrentOrders()
def GetCurrentOrders(self): pass
# int Num : Count of orders
Num=None
class MyOrders(IOrders):
def GetCurrentOrders(self):
print('to do something...')
_Num=None
def get_Num(self): return self._Num
def set_Num(self, value): self._Num = value
Num = property(get_Num, set_Num)
#obj=MyOrders()
为了生成这段代码,我输入的信息有哪些呢?
//增加接口名字
s.AddInterfaceName("IOrders", "IOrders interface");
//增加方法原型和帮助信息
s.AddMethod("IOrders GetCurrentOrders()", "Get the newest orders info");
//增加属性
s.AddProperty("int Num", "Count of orders");
//生成代码
ret=s.Run("Python");
//打印生成的信息
Console.WriteLine(ret);
由此可见,无论是什么语言,其语言结构大体相似,只要掌握相应的语言结构关键信息,比如面向对象有属性、方法,方法都有参数和返回值,那么只要输入这些信息,就可生成对应的语言的代码了。可节约很多学习时间。