static void Main(string[] args) { // Thread.Sleep(1000); // { // try { // Script script = new Script(); // script.LoadLibrary(); // script.PushFastReflectClass(typeof(Test), new ScorpioClass_ScorpioReflect_Test(script)); // script.SetObject("Test", script.CreateObject(new Test(100))); // var time = Environment.TickCount; // for (int i = 0; i < 1000000; ++i) { // script.LoadString(@" //Test.Func() //"); // } // Console.WriteLine(Environment.TickCount - time); // } catch (System.Exception ex) { // Console.WriteLine(ex.ToString()); // } // } // { // Script script = new Script(); // script.LoadLibrary(); // script.SetObject("Test", script.CreateObject(new Test(100))); // var time = Environment.TickCount; // for (int i=0;i<1000000;++i) // { // script.LoadString(@" //Test.Func() //"); // } // Console.WriteLine(Environment.TickCount - time); // } // Console.ReadKey(); var g = new Scorpio.ScorpioReflect.GenerateScorpioClass(typeof(Test)); var str = g.Generate(); File.WriteAllText(@"C:\Users\qingf\Desktop\ConsoleApplication1\ConsoleApplication1\" + g.ScorpioClassName + ".cs", str, Encoding.UTF8); }
static void Main(string[] args) { // Thread.Sleep(1000); // { // try { // Script script = new Script(); // script.LoadLibrary(); // script.PushFastReflectClass(typeof(Test), new ScorpioClass_ScorpioReflect_Test(script)); // script.SetObject("Test", script.CreateObject(new Test(100))); // var time = Environment.TickCount; // for (int i = 0; i < 1000000; ++i) { // script.LoadString(@" //Test.Func() //"); // } // Console.WriteLine(Environment.TickCount - time); // } catch (System.Exception ex) { // Console.WriteLine(ex.ToString()); // } // } // { // Script script = new Script(); // script.LoadLibrary(); // script.SetObject("Test", script.CreateObject(new Test(100))); // var time = Environment.TickCount; // for (int i=0;i<1000000;++i) // { // script.LoadString(@" //Test.Func() //"); // } // Console.WriteLine(Environment.TickCount - time); // } // Console.ReadKey(); { var g = new Scorpio.ScorpioReflect.GenerateScorpioClass(typeof(Test)); var str = g.Generate(); File.WriteAllText(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "/" + g.ScorpioClassName + ".cs", str, Encoding.UTF8); } { var g = new Scorpio.ScorpioReflect.GenerateScorpioDelegate(); g.AddType(typeof(Action <bool>)); g.AddType(typeof(Action <int>)); g.AddType(typeof(TestDelegate1)); g.AddType(typeof(TestDelegate2)); g.AddType(typeof(TestDelegate3)); g.AddType(typeof(TestDelegate4)); g.AddType(typeof(TestDelegate5)); g.AddType(typeof(TestDelegate6)); g.AddType(typeof(TestDelegate7)); File.WriteAllText(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "/" + g.ClassName + ".cs", g.Generate(), Encoding.UTF8); } { var g = new Scorpio.ScorpioReflect.GenerateScorpioType(); g.AddType(typeof(List <int>)); g.AddType(typeof(Script)); g.AddType(typeof(TestTemp <short, int> .Test <byte, long>)); File.WriteAllText(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "/" + g.ClassName + ".cs", g.Generate(), Encoding.UTF8); //StringBuilder builder = new StringBuilder(); //Type[] types = new Type[] { // typeof(TestTemp<sbyte,byte>.Test<short,ushort>.Test1<int,uint>), //}; //foreach (var type in types) { // builder.AppendLine(ScorpioReflectUtil.GetFullName(type)); // builder.AppendLine(type.FullName); // builder.AppendLine(); //} //File.WriteAllText(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "/a.cs", builder.ToString()); } }