public TypeVisitor(Module module) { new NameVisitor(module); ignoreErrors = true; module.Accept(this); if (result.Count > 0) { throw new InvalidOperationException(); } ignoreErrors = false; module.Accept(this); }
protected override CodeDomLocalizationModel GetCurrentLocalizationModelFromDesignedFile() { Module m = ParseFormAsModule(); FindLocalizationModelVisitor visitor = new FindLocalizationModelVisitor(); m.Accept(visitor); return(visitor.Model); }
public static bool Compile(Log log, Module module) { Visitor<Null>[] passes = new Visitor<Null>[] { new StructuralCheckPass(log), new DefineSymbolsPass(log), new ComputeSymbolTypesPass(log), new ComputeTypesPass(log), new DefaultInitializePass(), new FlowValidationPass(log), }; foreach (Visitor<Null> pass in passes) { module.Accept(pass); if (log.errors.Count > 0) { return false; } } return true; }
CodeCompileUnit ParseForm() { ParseInformation parseInfo = ParserService.ParseFile(this.Generator.ViewContent.DesignerCodeFile.FileName, this.Generator.ViewContent.DesignerCodeFileContent, false); Module module = ParseFormAsModule(); #if DEBUG Console.WriteLine(module.ToCodeString()); #endif CodeDomVisitor visitor = new CodeDomVisitor(parseInfo.MostRecentCompilationUnit.ProjectContent); module.Accept(visitor); #if DEBUG // output generated CodeDOM to the console : ICSharpCode.NRefactory.Visitors.CodeDomVerboseOutputGenerator outputGenerator = new ICSharpCode.NRefactory.Visitors.CodeDomVerboseOutputGenerator(); outputGenerator.GenerateCodeFromMember(visitor.OutputCompileUnit.Namespaces[0].Types[0], Console.Out, null); CodeDomProvider cSharpProvider = new Microsoft.CSharp.CSharpCodeProvider(); cSharpProvider.GenerateCodeFromCompileUnit(visitor.OutputCompileUnit, Console.Out, null); #endif return(visitor.OutputCompileUnit); }
public NameVisitor(Module module) { module.Accept(this); }
public override Null Visit(Module node) { node.Accept(builder); analyzer.Run(builder); File.WriteAllText("graphs.dot", builder.ToDotGraph()); base.Visit(node); return null; }
public void AcceptCallsAcceptForEachAsset() { var visitor = new Mock<IAssetVisitor>(); var module = new Module("~/test"); var asset1 = new Mock<IAsset>(); var asset2 = new Mock<IAsset>(); module.Assets.Add(asset1.Object); module.Assets.Add(asset2.Object); module.Accept(visitor.Object); asset1.Verify(a => a.Accept(visitor.Object)); asset2.Verify(a => a.Accept(visitor.Object)); }
public void AcceptCallsVisitOnVistor() { var visitor = new Mock<IAssetVisitor>(); var module = new Module("~/test"); module.Accept(visitor.Object); visitor.Verify(v => v.Visit(module)); }
public bool ModuleContainsPath(string path, Module module) { pathToFind = path.IsUrl() ? path : NormalizePath(path, module); module.Accept(this); return isFound; }