Repolode
apple

apple/swift-argument-parser

Типобезопасная библиотека Swift для объявления и разбора аргументов командной строки, опций и флагов с автоматической генерацией справки.

Звёзды
3,793
Форки
438
Открытые issues
154
Последний коммит
3 дня назад

Что это?

Swift Argument Parser — библиотека для создания инструментов командной строки на Swift. Вы объявляете тип, свойства которого с помощью property wrappers помечены как флаги, опции или позиционные аргументы, а затем приводите его к ParsableCommand или AsyncParsableCommand. Библиотека разбирает аргументы, создает экземпляр типа и запускает метод run() либо завершает работу с сообщением об ошибке.

Опираясь на имена и типы свойств, а также предоставленный вами текст справки, парсер автоматически генерирует строки использования, подробный вывод --help и сообщения об ошибках — без дополнительного кода. Команды можно объединять во вложенные подкоманды. В пакет также входят примеры: вложенный инструмент для математических вычислений и асинхронная программа для подсчета строк.

Пакет следует принципу семантического версионирования. Минимальная версия Swift toolchain зависит от релиза: от Swift 5.1 для ранних версий до Swift 6.0 для версии 1.8.0 и более поздних.

Ключевые возможности

  • 01Объявляйте флаги, опции и позиционные аргументы с помощью property wrappers.
  • 02Автоматически генерирует текст использования, подробную справку и сообщения об ошибках.
  • 03Поддерживает вложенные команды и подкоманды.
  • 04Поддерживает async/await через AsyncParsableCommand.
  • 05Подключается как зависимость через Swift Package Manager.

Сценарии использования

  • Создание инструмента командной строки на Swift или для платформ Apple.
  • Добавление структурированной иерархии подкоманд в существующий Swift CLI.
  • Написание небольшой утилиты в стиле скрипта, которой нужен типизированный разбор аргументов.

Быстрый старт

  1. 1

    Добавьте пакет ArgumentParser в зависимости Package.swift и в целевой исполняемый модуль

  2. 2

    Объявите тип, соответствующий ParsableCommand, добавьте атрибут @main и реализуйте run()

Что важно знать

  • Для версий 1.8.0 и новее требуется Swift 6.0 или более новая версия.
  • Формулировки автоматически созданной справки и сообщений об ошибках могут меняться в любом выпуске.

Темы

Частые вопросы

Что такое swift-argument-parser?
Типобезопасная библиотека Swift для объявления и разбора аргументов командной строки, опций и флагов с автоматической генерацией справки. Swift Argument Parser — библиотека для создания инструментов командной строки на Swift. Вы объявляете тип, свойства которого с помощью property wrappers помечены как флаги, опции или позиционные аргументы, а затем приводите его к ParsableCommand или AsyncParsableCommand. Библиотека разбирает аргументы, создает экземпляр типа и запускает метод run() либо завершает работу с сообщением об ошибке.
swift-argument-parser можно использовать бесплатно? Какая у него лицензия?
swift-argument-parser распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
swift-argument-parser всё ещё поддерживается?
Активно поддерживается. Последний коммит в swift-argument-parser — 16 окт. 2026 г..
Для чего можно использовать swift-argument-parser?
Создание инструмента командной строки на Swift или для платформ Apple. Добавление структурированной иерархии подкоманд в существующий Swift CLI. Написание небольшой утилиты в стиле скрипта, которой нужен типизированный разбор аргументов.
Как установить swift-argument-parser?
Добавьте пакет ArgumentParser в зависимости Package.swift и в целевой исполняемый модуль Объявите тип, соответствующий ParsableCommand, добавьте атрибут @main и реализуйте run()
Где скачать swift-argument-parser?
Исходный код и инструкции по установке — на GitHub: https://github.com/apple/swift-argument-parser

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты