From 9c77b6d54f27f4fc1322f97cdf703a08d86e8b1a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=B7=9E=E5=9F=8E?= <36623158+SeWZC@users.noreply.github.com> Date: Tue, 23 Jan 2024 15:30:01 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=96=87=E4=BB=B6=E8=8C=83?= =?UTF-8?q?=E5=9B=B4=E5=91=BD=E5=90=8D=E7=A9=BA=E9=97=B4=E6=94=AF=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在语法解析中,文件范围命名空间和命名空间是不同的节点 --- src/SourceFusion.Tool/Syntax/CompileTypeVisitor.cs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/SourceFusion.Tool/Syntax/CompileTypeVisitor.cs b/src/SourceFusion.Tool/Syntax/CompileTypeVisitor.cs index 8648378..3c51dbc 100644 --- a/src/SourceFusion.Tool/Syntax/CompileTypeVisitor.cs +++ b/src/SourceFusion.Tool/Syntax/CompileTypeVisitor.cs @@ -87,6 +87,20 @@ public override SyntaxNode VisitNamespaceDeclaration(NamespaceDeclarationSyntax return base.VisitNamespaceDeclaration(node); } + /// + /// 获取文件命名空间 + /// + /// + /// + public override SyntaxNode VisitFileScopedNamespaceDeclaration(FileScopedNamespaceDeclarationSyntax node) + { + var nameSyntax = Visit(node.Name); + // 命名空间 + _namespace = nameSyntax.ToFullString().Trim(); + + return base.VisitFileScopedNamespaceDeclaration(node); + } + /// /// 获取类 ///