Repolode
swiftlang

swiftlang/swift-syntax

Swift 소스 코드를 원본과 정확히 대응하는 구문 트리로 파싱하고 검사·생성·변환하는 Swift 라이브러리 모음입니다.

스타
3,712
포크
562
열린 이슈
180
마지막 커밋
7시간 전

어떤 프로젝트인가요?

swift-syntax는 Swift 소스 코드를 원본과 정확히 대응하는 트리 형태로 다루는 Swift 라이브러리 모음입니다. 이 트리를 SwiftSyntax 트리라고 합니다. Swift 코드를 읽거나 다시 작성해야 하는 도구는 원시 텍스트를 직접 처리하는 대신 이 트리를 기반으로 만들 수 있습니다.

SwiftSyntax 트리는 Swift 매크로 시스템의 기반입니다. 매크로 확장 노드는 SwiftSyntax 노드로 표현되며, 매크로는 소스 파일에 삽입할 SwiftSyntax 트리를 생성합니다. 이 패키지는 Swift Package Manager와 Xcode를 통해 배포되며, 실험적인 Bazel 빌드 설정도 제공합니다.

릴리스 버전은 Swift 언어 및 툴링 버전에 맞춰집니다. 따라서 509와 같은 메이저 버전은 Swift 5.9에 대응합니다. 저장소에서 사용 예제를 확인할 수 있으며, 커뮤니티 AST 탐색기 웹사이트에서 트리를 인터랙티브하게 살펴볼 수도 있습니다.

핵심 기능

  • 01Swift 소스 코드를 원본과 정확히 대응하는 구문 트리로 파싱합니다.
  • 02트리를 검사하고 순회하는 라이브러리를 제공합니다.
  • 03구문 노드를 만들고 수정해 Swift 코드를 생성할 수 있습니다.
  • 04Swift 매크로 확장의 기반으로 사용됩니다.
  • 05Swift Package Manager, Xcode 또는 Bazel을 통해 설치할 수 있습니다.

활용 사례

  • 컴파일 시점에 코드를 생성하는 Swift 매크로 작성
  • Swift 코드용 린터, 포매터 또는 리팩터링 도구 개발
  • Swift 소스 파일을 자동으로 다시 작성하거나 코드를 생성

빠른 시작

  1. 1

    swift-syntax 패키지를 Package.swift의 종속성에 추가하세요

    dependencies: [ .package(url: "https://github.com/swiftlang/swift-syntax.git", from: "<#latest swift-syntax tag#>"), ]
  2. 2

    또는 Xcode 프로젝트의 Package Dependencies 탭에서 종속성으로 추가하세요

사용 전 알아둘 점

  • 릴리스는 Swift 언어 및 툴체인 버전에 따라 달라지므로, 사용 중인 Swift 릴리스에 맞는 버전을 선택해야 합니다.
  • Bazel 빌드 구성은 실험 단계입니다.

토픽

자주 묻는 질문

swift-syntax은(는) 무엇인가요?
Swift 소스 코드를 원본과 정확히 대응하는 구문 트리로 파싱하고 검사·생성·변환하는 Swift 라이브러리 모음입니다. swift-syntax는 Swift 소스 코드를 원본과 정확히 대응하는 트리 형태로 다루는 Swift 라이브러리 모음입니다. 이 트리를 SwiftSyntax 트리라고 합니다. Swift 코드를 읽거나 다시 작성해야 하는 도구는 원시 텍스트를 직접 처리하는 대신 이 트리를 기반으로 만들 수 있습니다.
swift-syntax은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
swift-syntax은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
swift-syntax은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. swift-syntax의 마지막 커밋은 2026년 10월 21일입니다.
swift-syntax은(는) 어디에 사용할 수 있나요?
컴파일 시점에 코드를 생성하는 Swift 매크로 작성 Swift 코드용 린터, 포매터 또는 리팩터링 도구 개발 Swift 소스 파일을 자동으로 다시 작성하거나 코드를 생성
swift-syntax는 어떻게 설치하나요?
swift-syntax 패키지를 Package.swift의 종속성에 추가하세요: dependencies: [ .package(url: "https://github.com/swiftlang/swift-syntax.git", from: "<#latest swift-syntax tag#>"), ] 또는 Xcode 프로젝트의 Package Dependencies 탭에서 종속성으로 추가하세요
swift-syntax은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/swiftlang/swift-syntax

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트