CodeSampleX

Пример

ensure a function is only executed once and returns the result of the first call

sha256:f6cf7fcd5c1d7405d53fa97c3e51c41bf973fc70620273e3f61d518e8fe4af07

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

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

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

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

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

Окружение Контракт Этапы Запуск
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
Цель
ensure a function is only executed once and returns the result of the first call
Пакеты
Символы
  • onetime
  • onetime.callCount
Окружение
node 22.23.2
Создан
2026-08-27T16:19:52Z

Контракт

  1. assert function executes once and returns initial result on subsequent calls
  2. assert subsequent calls return cached result without re-executing underlying function
  3. assert onetime.callCount accurately returns total invocations of wrapped function
  4. assert onetime.callCount throws when invoked on unwrapped function
  5. assert throw option raises Error on subsequent invocations
  6. assert non-function target throws TypeError
  7. assert wrapped function preserves name and metadata via mimicry

Файлы

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

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

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

аноним