ICompilationUnit Parse (ICSharpCode.NRefactory.IParser parser, string fileName) { parser.Parse(); DomConverter visitor = new DomConverter (fileName); ICompilationUnit result = (ICompilationUnit)visitor.VisitCompilationUnit(parser.CompilationUnit, null); /* visitor.Cu.ErrorsDuringCompile = p.Errors.Count > 0; visitor.Cu.Tag = p.CompilationUnit; RetrieveRegions(visitor.Cu, p.Lexer.SpecialTracker); foreach (IClass c in visitor.Cu.Classes) c.Region.FileName = fileName; AddCommentTags(visitor.Cu, p.Lexer.TagComments);*/ return result; }
ICompilationUnit Parse(ICSharpCode.NRefactory.IParser p, string fileName, IProjectContent projectContent) { p.Lexer.SpecialCommentTags = lexerTags; p.ParseMethodBodies = false; p.Parse(); NRefactoryASTConvertVisitor visitor = new NRefactoryASTConvertVisitor(projectContent, ICSharpCode.NRefactory.SupportedLanguage.VBNet); if (projectContent.Project != null) { visitor.VBRootNamespace = ((IProject)projectContent.Project).RootNamespace; } visitor.Specials = p.Lexer.SpecialTracker.CurrentSpecials; visitor.VisitCompilationUnit(p.CompilationUnit, null); visitor.Cu.FileName = fileName; visitor.Cu.ErrorsDuringCompile = p.Errors.Count > 0; RetrieveRegions(visitor.Cu, p.Lexer.SpecialTracker); AddCommentTags(visitor.Cu, p.Lexer.TagComments); return visitor.Cu; }