_SwiftSyntaxTestSupport 版本 509.1.0

_SwiftSyntaxTestSupport版本 509.1.0

SwiftyLab 维护。



 
依赖项
SwiftBasicFormat= 509.1.0
SwiftSyntaxLib= 509.1.0
SwiftSyntaxBuilder= 509.1.0
 

SwiftSyntax

SwiftSyntax 是一系列 Swift 库,用于解析、检查、生成和转换 Swift 源代码。

文档

您可以在 swiftpackageindex.com 上阅读 SwiftSyntax 的文档。

https://swift-ast-explorer.com 上可以交互式地探索源文件的 SwiftSyntax 树,这是由 @kishikawakatsumi 开发的。

将 SwiftSyntax 添加为依赖项

主干开发(主要)

SwiftSyntax的主分支跟踪最新的发展。它不是官方发布版本,其API和行为可能快速变化。要使用它,请将此仓库添加到您的项目Package.swift文件中

// swift-tools-version:5.7
import PackageDescription

let package = Package(
  name: "MyTool",
  dependencies: [
    .package(url: "https://github.com/apple/swift-syntax.git", branch: "main"),
  ],
  targets: [
    .target(name: "MyTool", dependencies: [
      .product(name: "SwiftSyntax", package: "swift-syntax"),
    ]),
  ]
)

主干SwiftSyntax还包括

  • SwiftParser - 用于原生解析源代码
  • SwiftOperators - 用于折叠包含算子的SwiftSyntax树
  • SwiftSyntaxBuilder - 用于以构建器式接口生成Swift代码
  • SwiftSyntaxMacros - 提供语法宏支持

发布

SwiftSyntax的发布与相应语言和工具的发布保持一致且稳定。要使用它们,请将此仓库添加到您的项目Package.swift文件中

// swift-tools-version:5.7
import PackageDescription

let package = Package(
  name: "MyTool",
  dependencies: [
    .package(url: "https://github.com/apple/swift-syntax.git", exact: "<#Specify Release tag#>"),
  ],
  targets: [
    .target(name: "MyTool", dependencies: [
      .product(name: "SwiftSyntax", package: "swift-syntax"),
    ]),
  ]
)

用您想要使用的SwiftSyntax版本替换<#指定发布标签#>(请参阅下表以获取映射详细信息)。

Xcode 发布标签 Swift 发布标签 SwiftSyntax 发布标签
Xcode 14.3 swift-5.8-RELEASE 508.0.0
Xcode 14.0 swift-5.7-RELEASE 0.50700.1
Xcode 13.3 swift-5.6-RELEASE 0.50600.1
Xcode 13.0 swift-5.5-RELEASE 0.50500.0
Xcode 12.5 swift-5.4-RELEASE 0.50400.0
Xcode 12.0 swift-5.3-RELEASE 0.50300.0
Xcode 11.4 swift-5.2-RELEASE 0.50200.0

文档

SwiftSyntax使用DocC打包结构进行文档。要在Xcode中查看渲染后的文档,请打开SwiftSyntax包并选择

Product > Build Documentation

相关文章使用markdown编写,可以在浏览器、文本编辑器或IDE中查看。

参与贡献

开始为 SwiftSyntax 贡献,查看 本指南 了解更多信息。

报告问题

如果在使用 SwiftSyntax 时遇到任何问题,我们非常欢迎您在 GitHub Issue 上提交病虫害报告。

Bazel

SwiftSyntax 提供了一个实验性的 Bazel 构建配置,由 Keith Smiley 维护。要使用它,您可以从中相关的发布标签将源存档拖到您的 WORKSPACE 中,并在 BUILD.bazel 文件中依赖您需要的库。每个库还有一个关联的 Library_opt 目标(如 SwiftSyntax_opt),这使得 SwiftSyntax 总是启用优化进行构建。这可能会提高本地运行时性能,但会降低调试能力并增加初始构建时间。请将相关的任何 问题 使用标签“Bazel”标记。

许可证

请参阅 LICENSE 以获取更多信息。