本章介绍
将Snail脚本编译成EXE文件的原型框架,其主要原理是利用Reflection.Emit逐一转换Snail的每条语句。之所以称为原型框架,是因为目前版本只支持:将一个变量赋值为整数,然后将这个整数变量输出。
a = 1001
print(a)
利用上面的两条语句生成一个exe文件,同时将结果输出,得到的exe文件大小只有2k。实现了这个原型之后,其他内容的实现就是时间和体力的问题了。
代码讲解
1)初始化相关模块
public TransToCIL()
{
string assemblyName = "SnailCilAsm";
modName = "SnailCil.exe";
string typeName = "SnailCilType";
string methodName = "Main";
AssemblyName name = new AssemblyName(assemblyName);
AppDomain domain = System.Threading.Thread.GetDomain();
builder