public override string GetNamespace(string fileName, string definedSymbols) { string result; using (IParser parser = ParserFactory.CreateParser(fileName)) { HashSet <string> hashSet = new HashSet <string>(definedSymbols.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries)); foreach (string current in hashSet) { parser.get_Lexer().get_ConditionalCompilationSymbols().Add(current, string.Empty); } parser.get_Lexer().set_EvaluateConditionalCompilation(true); parser.Parse(); try { CSharpLanguage.NamespaceVisitor namespaceVisitor = new CSharpLanguage.NamespaceVisitor(); CSharpLanguage.VisitorData visitorData = new CSharpLanguage.VisitorData { TargetClassName = Path.GetFileNameWithoutExtension(fileName) }; parser.get_CompilationUnit().AcceptVisitor(namespaceVisitor, visitorData); result = ((!string.IsNullOrEmpty(visitorData.DiscoveredNamespace)) ? visitorData.DiscoveredNamespace : string.Empty); return(result); } catch { } } result = string.Empty; return(result); }
public override string GetNamespace(string fileName) { using (IParser parser = ParserFactory.CreateParser(fileName)) { parser.Parse(); try { CSharpLanguage.NamespaceVisitor namespaceVisitor = new CSharpLanguage.NamespaceVisitor(); CSharpLanguage.VisitorData visitorData = new CSharpLanguage.VisitorData() { TargetClassName = Path.GetFileNameWithoutExtension(fileName) }; parser.get_CompilationUnit().AcceptVisitor((IAstVisitor) namespaceVisitor, (object) visitorData); return !string.IsNullOrEmpty(visitorData.DiscoveredNamespace) ? visitorData.DiscoveredNamespace : string.Empty; } catch { } } return string.Empty; }
public override string GetNamespace(string fileName) { using (IParser parser = ParserFactory.CreateParser(fileName)) { parser.Parse(); try { CSharpLanguage.NamespaceVisitor visitor = new CSharpLanguage.NamespaceVisitor(); CSharpLanguage.VisitorData visitorData = new CSharpLanguage.VisitorData { TargetClassName = Path.GetFileNameWithoutExtension(fileName) }; parser.CompilationUnit.AcceptVisitor(visitor, visitorData); return((!string.IsNullOrEmpty(visitorData.DiscoveredNamespace)) ? visitorData.DiscoveredNamespace : string.Empty); } catch { } } return(string.Empty); }