如何使用BigCookieKit.Reflect?
Nuget>>Search>>BigCookieKit.Reflect
首先引入命名空间
using BigCookieKit.Reflect;
基础循环和判断
var action = SmartBuilder.DynamicMethod<Action>(string.Empty, emit =>
{
//var int1 = 0;
//while(true)
//{
// if(int1>5) break;
//}
var int1 = emit.NewInt32();
emit.While(() => emit.NewBoolean(true).Output(), tab =>
{
emit.IF(int1 > 5, () => tab.Break()).IFEnd();
int1 += 1;
});
//for(int i =0; i<10 ; i++)
//{
// Console.WriteLine(i);
//}
emit.For(0, 10, (index, tab) =>
{
emit.ReflectStaticMethod("WriteLine", typeof(Console), index);
});
//for(int i =10; i>=0 ; i--)
//{
// Console.WriteLine(i);
//}
emit.Forr(10, 0, (index, tab) =>
{
emit.ReflectStaticMethod("WriteLine", typeof(Console), index);
});
emit.Return();
});
action.Invoke();