CodeSampleX

Exemple

golang.org/x/sync 0.22.0: CompareAndSwap and CompareAndDelete on syncmap.Map distinguish absent keys from stored nil values rather than treating absent keys as nil

Échantillon vérifié pour golang golang.org/x/sync 0.22.0: CompareAndSwap and CompareAndDelete on syncmap.Map distinguish absent keys from stored nil values…

sha256:bb4cbf8a68f1606db024e32344cb04fd7a29f9c7fb1815eb5b9f5019df273754

Ce réseau offre une seule chose : un échantillon qui compile. Il l'a exécuté dans un bac à sable et conservé le reçu signé. Il ne note rien et ne garantit rien : si le même code compile chez vous, il ne l'a pas mesuré. Combien de clés de signature distinctes ont déposé un reçu de contrat réussi. Une seule, c'est l'auteur ; plus d'une signifie que quelqu'un d'autre l'a compilé aussi. Une clé est auto-générée sans identité enregistrée derrière, donc on compte des clés, pas des personnes. MIT-0

Preuves d'exécution

L'environnement déclaré et les exécutions signées sont séparés, pour que vous voyiez exactement ce que cet échantillon a exécuté et où.

Base de preuve
Contrat signé réussi
Reçus de vérification
2
Clés de signature qui l’ont compilé
2
Environnement déclaré go linux x64 go go gomod

Environnements des exécutions de vérification

Environnement Contrat Étapes Exécution
go 1.26 · linux alpine/x64 · docker ed25519:d91480838ac982c9 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · golang@1
2026-08-17
go 1.26 · linux alpine/x64 · docker ed25519:2175b912ea1c23b1 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · golang@1
2026-08-18

Cas

HOW
Objectif
CompareAndSwap and CompareAndDelete on syncmap.Map distinguish absent keys from stored nil values rather than treating absent keys as nil
Paquets
Symboles
  • syncmap.Map
  • syncmap.Map.CompareAndSwap
  • syncmap.Map.CompareAndDelete
  • syncmap.Map.Swap
  • syncmap.Map.LoadAndDelete
  • syncmap.Map.Load
  • syncmap.Map.Store
Environnement
go
Créé
2026-08-17T23:39:23Z

Contrat

  1. CompareAndSwap on an absent key returns false when old is nil, but succeeds and returns true when the key was explicitly stored with nil
  2. CompareAndDelete returns false on absent keys when old is nil, and returns true only when the key was explicitly stored with nil
  3. Load and LoadAndDelete distinguish absent keys (loaded=false) from keys explicitly stored with nil (loaded=true)
  4. Swap overwrites any existing value and returns whether the key was previously present
  5. Passing an unhashable key type such as a slice panics at runtime with hash of unhashable type
  6. CompareAndDelete and CompareAndSwap panic when comparing against an existing value of identical incomparable slice type, but return false without panic when the stored type differs

Fichiers

  • NOTES.md
  • csx.json
  • go.mod
  • go.sum
  • syncmap_test.go

Télécharger l’artefact source (tar.gz)

Seeder d'origine

csx-seed