Об этом проекте
SwiftSyntax — это набор библиотек Swift, которые работают с точно отражающим исходный код древовидным представлением исходного кода Swift, известным как дерево SwiftSyntax. Это дерево лежит в основе системы макросов Swift, где узлы раскрытия макросов представлены как узлы SwiftSyntax, а макросы генерируют деревья SwiftSyntax для вставки в исходные файлы.
Ключевые возможности:
- Разбор исходного кода Swift в синтаксическое дерево с сохранением точности исходного кода.
- Анализ и обход синтаксического дерева.
- Программная генерация и преобразование кода Swift.
- Интеграция с Swift Package Manager и проектами Xcode.
- Экспериментальная конфигурация сборки Bazel для пользователей Bazel.
Документация доступна на Swift Package Index, а интерактивный обозреватель (swift-ast-explorer.com) помогает визуализировать дерево. Примеры использования приведены в каталоге Examples.
Релизы соответствуют версиям языка и инструментов Swift (например, версия 509 соответствует Swift 5.9). Чтобы использовать его, добавьте URL пакета в Package.swift или в зависимости пакетов проекта Xcode.
Сообщения о проблемах и вклад приветствуются через GitHub. Проект лицензирован по Apache License 2.0.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.