tc39 / tc39/proposal-immutable-arraybuffer
Order of operations, when to throw or silently do nothing?
Personne n'a encore pris cette issue.
- Langage dominant
- JavaScript
- Étoiles
- 38
- Forks
- 7
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
-
Should
sliceToImmutablewith reversed start and end throw an exception even thoughslicewith the same arguments would not? -
Should trying to write data in an immutable ArrayBuffer via a TypedArray element set throw, even though trying to write out-of-bounds or to a detached ArrayBuffer does not?
-
Should TypedArray write methods (copyWithin, fill, reverse, set, etc.) throw when their backing ArrayBuffer is immutable but the targeted range is zero-length? If so, how early or late in the algorithm? The methods currently inspect arguments after ValidateTypedArray.
Similarly,
-
How early or late in SetViewValue against an immutable ArrayBuffer should an exception be thrown? It currently inspects arguments before IsViewOutOfBounds.
-
Likewise for abstract operations such as ArrayBufferCopyAndDetach (which currently checks IsSharedArrayBuffer, then newLength, then IsDetachedBuffer).
-
And also for Atomics functions.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Examinez les opérations listées—sliceToImmutable, TypedArray write methods, SetViewValue, ArrayBufferCopyAndDetach et Atomics—et comparez leur ordre actuel de validation. L’issue ne sera terminée qu’une fois que la proposition aura déterminé quand les erreurs liées aux buffers immuables doivent se produire par rapport aux vérifications des arguments, des limites, du détachement et de la longueur nulle.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- javascript
- Domaine
- backend-api-design
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 20/100