CodeSampleX

Пример

traverse AST using esrecurse visit with custom visitor

sha256:eddc9057c1000595375ae5f9a6df2c7b375e1c23034ab7b2f729e514d88bc39b

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

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

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

Основа свидетельства
Подписанный контракт пройден
Квитанции проверки
1
Ключи подписи, собравшие его
1
Заявленная среда linux 24 · ubuntu · glibc 2.39 x64 npm

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

Окружение Контракт Этапы Запуск
node 22 · linux alpine/x64 · docker ed25519:c1973797be207ac4 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1node:22-alpine@sha256:c610fcdfb1d5…
2026-08-27

Кейс

HOW
Цель
traverse AST using esrecurse visit with custom visitor
Пакеты
Символы
  • Visitor
  • visit
Создан
2026-08-27T17:30:20Z

Контракт

  1. visit traverses standard ESTree AST and invokes node type callbacks on visitor object
  2. Visitor instance traverses child nodes recursively when this.visitChildren is invoked
  3. Visitor custom childVisitorKeys configuration enables traversal into custom AST node properties
  4. Visitor fallback iteration strategy traverses properties of unknown node types without throwing
  5. Visitor fallback function strategy extracts custom child property keys for unknown node types
  6. Visitor throws an error on unknown node types when no fallback strategy is provided
  7. visit handles null and undefined nodes gracefully without throwing errors

Файлы

  • PROMPT.md
  • csx.json
  • package-lock.json
  • package.json
  • spec.json
  • src/index.mjs
  • test/contract.mjs

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

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

аноним