private void ParseAndPreVisit() { foreach (Source entry in Sources.Values) { if (!entry.CodeFile) { continue; } progress.Increment("Parsing"); string convetedCode = ConvertFile(entry.Code); StringReader reader = new StringReader(convetedCode); IParser parser = ParserFactory.CreateParser(GetLanguage(), reader); parser.ParseMethodBodies = true; parser.Parse(); CompilationUnit compilationUnit = parser.CompilationUnit; compilationUnit.Parent = new TypeReference(entry.File); parentVisitor.VisitCompilationUnit(compilationUnit, null); typesVisitor.VisitCompilationUnit(compilationUnit, null); projectTypeReferenceCorrector.VisitCompilationUnit(compilationUnit, null); if (Stubs.Contains(entry.File)) { StubTransformer st = new StubTransformer(); st.Members = (string)Stubs[entry.File]; st.VisitCompilationUnit(compilationUnit, null); } if (MembersExcludes.Contains(entry.File)) { string members = MembersExcludes[entry.File].ToString(); MemberExcludeTransformer met = new MemberExcludeTransformer(members); met.VisitCompilationUnit(compilationUnit, null); if (met.ExcludedType != null && met.ExcludedMembers != null) { baseTypeToExcludeMethod[met.ExcludedType] = met.ExcludedMembers; } } entry.CompilationUnit = compilationUnit; entry.Parser = parser; } }
private void ParseAndPreVisit() { foreach (Source entry in Sources.Values) { if (!entry.CodeFile) continue; progress.Increment("Parsing"); string convetedCode = ConvertFile(entry.Code); StringReader reader = new StringReader(convetedCode); IParser parser = ParserFactory.CreateParser(GetLanguage(), reader); parser.ParseMethodBodies = true; parser.Parse(); CompilationUnit compilationUnit = parser.CompilationUnit; compilationUnit.Parent = new TypeReference(entry.File); parentVisitor.VisitCompilationUnit(compilationUnit, null); typesVisitor.VisitCompilationUnit(compilationUnit, null); projectTypeReferenceCorrector.VisitCompilationUnit(compilationUnit, null); if (Stubs.Contains(entry.File)) { StubTransformer st = new StubTransformer(); st.Members = (string) Stubs[entry.File]; st.VisitCompilationUnit(compilationUnit, null); } if (MembersExcludes.Contains(entry.File)) { string members = MembersExcludes[entry.File].ToString(); MemberExcludeTransformer met = new MemberExcludeTransformer(members); met.VisitCompilationUnit(compilationUnit, null); if (met.ExcludedType != null && met.ExcludedMembers != null) baseTypeToExcludeMethod[met.ExcludedType] = met.ExcludedMembers; } entry.CompilationUnit = compilationUnit; entry.Parser = parser; } }