private ProgramGenerator getGenerator(int programIndex, int difficulty) { Tuple <WExpr, int>[] programArray = null; ProgramGenerator[] genArray = null; if (difficulty == Generation.LOW) { programArray = easyBasePrograms; genArray = easyGenerators; } if (difficulty == Generation.MEDIUM) { programArray = mediumBasePrograms; genArray = mediumGenerators; } if (difficulty == Generation.HIGH) { programArray = hardBasePrograms; genArray = hardGenerators; } if (genArray == null || programArray == null) { return(null); } else { if (genArray[programIndex] == null) { genArray[programIndex] = new ProgramGenerator(programArray[programIndex].Item1, filterMode, constMode, builderFilterModes); } return(genArray[programIndex]); } }
public Yolol.Grammar.AST.Program Generate() { var ast = new ProgramGenerator(_random).Generate(); Console.WriteLine($"\n=====\n{ast}"); return(ast); }
/// <summary> /// Generate template program from template body and generate the TemplateKey /// </summary> /// <param name="templateBody"></param> /// <param name="globalsTypes"></param> /// <param name="referencedAssemblies"></param> /// <returns></returns> protected static TemplateInfo GenerateTemplateProgram(string templateBody, Dictionary <string, Type> globalsTypes, List <Assembly> referencedAssemblies) { var pageTemplateParser = new ProgramGenerator(); var ti = new TemplateInfo { TemplateBody = templateBody, GlobalsTypes = globalsTypes, ReferencedAssemblies = referencedAssemblies }; pageTemplateParser.GenerateTemplateProgram(ref ti); ti.TemplateKey = ComputeTemplateKey(ti); return(ti); }
private AppCore() { _machineProfiles = new MachineProfiles(); _machine = new GrblMachine(); _document = new Document(); _generator = new ProgramGenerator(); _machineProfiles.ProfileAdded += _machineProfiles_EventHandler; _machineProfiles.ProfileRemoved += _machineProfiles_EventHandler; _machineProfiles.ProfileModified += _machineProfiles_EventHandler; settings = new PersistentSettings(); settingsTimer = new DispatcherTimer(); settingsTimer.Interval = TimeSpan.FromSeconds(10); settingsTimer.Tick += settingsTimer_Tick; }
static void Main(string[] args) { try { ProgramGenerator.example_render_model(); //render app //example_log_modelFactory<Product>(); //log modelform example // Example_Pagination(); //RunConfiguration(); } catch (Exception ex) { Console.WriteLine($"Application error {ex.Message}"); Console.WriteLine($"Application stacktrace {ex.StackTrace}"); } Console.ReadLine(); }
static bool numGenerations(WExpr program) { //ProgramGenerator genNone = new ProgramGenerator(program, WEFilter.Filtermode.NONE, VariableCache.ConstraintMode.NONE, ProgramBuilder.FilterMode.Trivial); ProgramGenerator genInputs = new ProgramGenerator(program, WEFilter.Filtermode.INPUTS, VariableCache.ConstraintMode.NONE, ProgramBuilder.FilterMode.Trivial); WExpr newprogram; //int countNone = 0; //while (genNone.GenerateWExpr(out newprogram)) //{ // ++countNone; //} int countInputs = 0; while (genInputs.GenerateWExpr(out newprogram)) { ++countInputs; } //Console.WriteLine($"None: {countNone}, Inputs: {countInputs}"); return(true); }
public Form1() { InitializeComponent(); SolutionGenerator solution = new SolutionGenerator("FormGeneratorSolution"); ProjectGenerator project1 = new ProjectGenerator("Project1"); // Form creation FormGenerator form1 = new FormGenerator("generateForm", project1.Name, ""); FormDesignerGenerator form1Designer = new FormDesignerGenerator(form1); // Program creation ProgramGenerator program = new ProgramGenerator(project1.Name, form1); // Add to project and solution project1.Add(form1); project1.Add(form1Designer); project1.Add(program); solution.Add(project1); solution.ExportToFile("Output"); }
//static bool toTMAndRun(WExpr program) //{ // TMCB<int, int> M = program.ToTMCB(-1); // foreach (int[][] input in WhileUtilities.NonNegIntTestInputs(program.GetNumVariables(), 4, program.GetUselessVariables().ToArray())) // { // Console.WriteLine("input:"); // Console.WriteLine(WhileUtilities.PrintTapes(input, M.blank)); // bool dummy; // int[][] output = M.Run(input, out dummy); // Console.WriteLine("output:"); // Console.WriteLine(WhileUtilities.PrintTapes(output, M.blank)); // string s = Console.ReadLine(); // if (s == "exit") // { // return false; // } // } // return true; //} static bool generate(WExpr program) { WExpr newProgram; ProgramGenerator gen = new ProgramGenerator(program, WEFilter.Filtermode.INFINITE, VariableCache.ConstraintMode.NONE, ProgramBuilder.FilterMode.Trivial); while (gen.GenerateWExpr(out newProgram)) { Console.WriteLine(newProgram.ToString()); string s = Console.ReadLine(); if (s == "exit") { return(false); } if (s == "skip") { return(true); } } return(true); }
static bool generationBody(WExpr program) { ProgramGenerator gen = new ProgramGenerator(program, WEFilter.Filtermode.NONE, VariableCache.ConstraintMode.NONE); Console.WriteLine("base:"); Console.WriteLine(program.ToString()); WExpr newProgram; int i = 0; string input = ""; while (true) { if (gen.GenerateWExpr(out newProgram)) { Console.WriteLine($"#{i}:"); Console.WriteLine(newProgram.ToString()); ++i; } else { Console.WriteLine("No more new programs"); break; } input = Console.ReadLine(); if (input == "exit") { return(false); } if (input == "skip") { break; } if (input == "enter") { int x = 0; } } return(true); }
public static void Main() { Tester.DoTest(new volume0._0071(), @"../../testfiles/volume0/0071.txt"); ProgramGenerator.Generate(@"../../volume0/_0071.cs", @"../../utils/PointInt.cs"); }
public ProgramTemplate(ProgramGenerator g) { this.generator = g; }
private void btnStartGenerate_Click(object sender, EventArgs e) { // TODO: Refactor this code (group generator ->>>>>>) // DESKTOP-1RVEUQ2 // Get list table is selected to generate var tables = listBoxDBTable.SelectedItems.Cast <Table>().ToList(); // Get project information to generate var projectInfo = bindingSourceProjectInfo.Current as ProjectInfo; if (!projectInfo.IsOKToGenerate()) { return; } // Start Generate Project var solution = new SolutionGenerator(projectInfo.SolutionName); var project1 = new ProjectGenerator(projectInfo.ProjectName); NamespaceHelper.Instance.ProjectNamespace = project1.Name; // Generate Form var loginForm = new LoginFormGenerator(); var loginFormDesigner = new LoginFormDesignerGenerator(loginForm); var viewListTableForm = new ViewListTableFormGenerator(); var viewListTableFormDesigner = new ViewListTableFormDesignerGenerator(viewListTableForm); var viewTableForm = new ViewTableFormGenerator(); var viewTableFormDesigner = new ViewTableFormDesignerGenerator(viewTableForm); // Generate Essential Class var dbLoader = new DatabaseLoaderGenerator(tables, DatabaseLoader.Instance.ConnectionStringBuilder); var enumFormType = new EnumFormTypeGenerator(); var program = new ProgramGenerator(viewListTableForm); // Generate Model And Forms foreach (var table in tables) { // Generate Model var modelGen = new ModelGenerator(table); var modelDaoGen = new ModelDaoGenerator(table); // Generate View Table Form var viewConcreteTableForm = new ViewConcreteTableFormGenerator(table, viewTableForm); var viewConreteTableFormDesigner = new ViewConcreteTableFormDesignerGenerator(table.Name, viewConcreteTableForm); // Generate Edit Form var editForm = new EditFormGenerator(table); var editFormDesigner = new EditFormDesignerGenerator(table, editForm); project1.Add(modelGen); project1.Add(modelDaoGen); project1.Add(viewConcreteTableForm); project1.Add(viewConreteTableFormDesigner); project1.Add(editForm); project1.Add(editFormDesigner); } // Generate View Table Form Factory var viewTableFormFactory = new ViewTableFormFactoryGenerator(tables); //------------------------------------------------------------------------------------------------- // Add to project and solution project1.Add(dbLoader); project1.Add(enumFormType); project1.Add(program); project1.Add(loginForm); project1.Add(loginFormDesigner); project1.Add(viewListTableForm); project1.Add(viewListTableFormDesigner); project1.Add(viewTableForm); project1.Add(viewTableFormDesigner); project1.Add(viewTableFormFactory); solution.Add(project1); solution.ExportToFile(projectInfo.Path); // Copy Custom Hibernate SQL to Generated Project CopyHibernateSQLToProject(projectInfo.SolutionPath, project1.Name); Close(); }
static void Main() { // Referenced Assemblies var refAssemblies = new List <Assembly> { typeof(Demo).Assembly }; // Globals var globals = new Dictionary <string, object> { { "friends", new List <Friend> { new Friend { Name = "Samantha", Age = 33 }, new Friend { Name = "Kim", Age = 35 }, new Friend { Name = "Sandra", Age = 22 }, new Friend { Name = "Natalie", Age = 20 } } } }; var xmlDoc = new XmlDocument(); xmlDoc.LoadXml(Resources.Macros); globals.Add("xmlDocsList", new XmlDocumentList { xmlDoc }); globals.Add("xmlDocsDictRecursive", new XmlDocumentDictRecursive { { xmlDoc, new XmlDocumentDictRecursive { { xmlDoc, null } } } }); globals.Add("xmlDocsDictListTuple", new Dictionary <XmlDocument, List <Tuple <string, string> > > { { xmlDoc, new List <Tuple <string, string> > { new Tuple <string, string>("a", "b") } } }); // Globals types var globalsTypes = new Dictionary <string, Type>(); foreach (var kw in globals) { globalsTypes.Add(kw.Key, kw.Value.GetType()); } try { var sw = new Stopwatch(); // Basic test Console.WriteLine("Basic tests:"); Console.WriteLine("======================================="); sw.Start(); Console.WriteLine(new Template("Hello ${w}!").Render(new Dictionary <string, object> { { "w", "world" } })); sw.Stop(); Console.WriteLine("{0} ms", sw.ElapsedMilliseconds); // Template program generator speed tests Console.WriteLine(); Console.WriteLine("Template program generator speed tests:"); Console.WriteLine("======================================="); sw.Reset(); sw.Start(); var programGenerator = new ProgramGenerator(); for (int i = 0; i < 5; i++) { sw.Reset(); sw.Start(); var ti = new TemplateInfo { TemplateBody = Resources.Main, GlobalsTypes = globalsTypes, ReferencedAssemblies = refAssemblies }; programGenerator.GenerateTemplateProgram(ref ti); sw.Stop(); Console.WriteLine("{0}: {1} ms", i + 1, sw.ElapsedMilliseconds); } sw.Stop(); // Template generation speed tests Console.WriteLine(); Console.WriteLine("Template compilation speed tests:"); Console.WriteLine("================================="); var template = new Template(Resources.Main, globalsTypes, refAssemblies); for (int i = 0; i < 5; i++) { sw.Reset(); sw.Start(); template.Compile(); sw.Stop(); Console.WriteLine("{0}: {1} ms", i + 1, sw.ElapsedMilliseconds); } // FS Template cache no. 1 Console.WriteLine(); Console.WriteLine("FS template cache no.1"); Console.WriteLine("======================"); string cacheFolder = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "Template Cache"); if (!Directory.Exists(cacheFolder)) { Directory.CreateDirectory(cacheFolder); } var cache1 = new FileSystemTemplateCache(cacheFolder, true, @"Demo_{key}.dll"); template.TemplateCache = cache1; string result = ""; for (int i = 0; i < 5; i++) { sw.Reset(); sw.Start(); result = template.Render(globals); sw.Stop(); Console.WriteLine("{0}: {1} ms", i + 1, sw.ElapsedMilliseconds); } Console.WriteLine(); // FS Template cache no. 2 Console.WriteLine(); Console.WriteLine("FS template cache no.2 (loading generated templates):"); Console.WriteLine("====================================================="); var cache2 = new FileSystemTemplateCache(cacheFolder, false, @"Demo_{key}.dll"); template.TemplateCache = cache2; for (int i = 0; i < 5; i++) { sw.Reset(); sw.Start(); template.Render(globals); sw.Stop(); Console.WriteLine("{0}: {1} ms", i + 1, sw.ElapsedMilliseconds); } // Memory Template cache Console.WriteLine(); Console.WriteLine("Memory template cache:"); Console.WriteLine("======================"); var cache3 = new MemoryTemplateCache(); template.TemplateCache = cache3; for (int i = 0; i < 5; i++) { sw.Reset(); sw.Start(); template.Render(globals); sw.Stop(); Console.WriteLine("{0}: {1} ms", i + 1, sw.ElapsedMilliseconds); } Console.WriteLine(); Console.WriteLine("Render result:"); Console.WriteLine("=============="); Console.WriteLine(result); } catch (TemplateParseException ex) { Console.WriteLine(""); Console.WriteLine("-------------------------------"); Console.WriteLine(ex.Message); Console.WriteLine("-------------------------------"); } catch (CompileSourceException ex) { Console.WriteLine(""); Console.WriteLine("-------------------------------"); Console.WriteLine(ex.Message); Console.WriteLine("-------------------------------"); } catch (RenderTemplateException ex) { Console.WriteLine(""); Console.WriteLine("-------------------------------"); Console.WriteLine(ex.Message); Console.WriteLine("-------------------------------"); } catch (Exception ex) { Console.WriteLine(""); Console.WriteLine("-------------------------------"); Console.WriteLine(ex.Message); Console.WriteLine("-------------------------------"); } Console.WriteLine(""); Console.WriteLine("Press any key ..."); Console.ReadKey(); }