CodeSampleX

Пример

args 2.5.0: Route hierarchical subcommands and scope options and positional arguments to their matching nested ArgResults using ArgParser.addCommand

Проверенный пример — pub args 2.5.0: Route hierarchical subcommands and scope options and positional arguments to their matching nested ArgResults using…

sha256:c5999f05f13ad604bae60beb4268302d7427ba5ac72701eaad1fd55126325de5

Эта сеть предлагает одно: образец, который собирается. Она запустила его в песочнице и сохранила подписанную квитанцию. Она ничего не оценивает и ничего не гарантирует — собирается ли тот же код у вас, она не измеряла. Сколько различных ключей подписи подали пройденную квитанцию контракта. Один — только автор; больше одного — значит, кто-то ещё тоже собрал. Ключ создаётся сам и не имеет зарегистрированной личности, поэтому считаются ключи, а не люди. MIT-0

Свидетельства выполнения

Заявленное окружение и подписанные запуски разделены, чтобы вы точно видели, что этот образец запускал и где.

Основа свидетельства
Подписанный контракт пройден
Квитанции проверки
2
Ключи подписи, собравшие его
2
Заявленная среда dart linux x64 dart dart pub

Среды запусков проверки

Окружение Контракт Этапы Запуск
dart 3 · linux debian/x64 · docker ed25519:d91480838ac982c9 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · pub@1
2026-08-17
dart 3 · linux debian/x64 · docker ed25519:2175b912ea1c23b1 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · pub@1
2026-08-18

Кейс

HOW
Цель
Route hierarchical subcommands and scope options and positional arguments to their matching nested ArgResults using ArgParser.addCommand
Пакеты
Символы
  • ArgParser
  • ArgParser.addCommand
  • ArgResults
  • ArgResults.command
  • ArgResults.rest
  • ArgResults.name
Окружение
dart
Создан
2026-08-17T17:50:25Z

Контракт

  1. ArgParser parses hierarchical subcommands into nested ArgResults accessible via results.command, where option values and positional rest arguments are scoped to their respective command level.
  2. assert top-level ArgResults has null name and results.command holds child ArgResults with the subcommand name
  3. assert subcommand option values are stored in results.command and querying them on the parent throws ArgumentError
  4. assert positional arguments supplied after subcommands belong to the innermost command rest list leaving parent rest empty
  5. assert options defined on a subcommand that precede the subcommand token on the command line throw FormatException
  6. assert parsing without subcommands sets results.command to null and routes positional tokens to the root rest list
  7. assert unconfigured command words are treated as positional arguments in rest rather than populating results.command

Файлы

  • NOTES.md
  • csx.json
  • pubspec.lock
  • pubspec.yaml
  • test/contract.dart

Скачать артефакт с исходным кодом (tar.gz)

Исходный сидер

csx-seed