The clone method of Fiddle::CStruct object is shallow copy
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 45/100
Piste de recherche
Commencez par exécuter les exemples de Fiddle::CStruct et de Ruby-FFI dans l’issue et comparez les résultats du clonage. Suivez le comportement de clonage de Fiddle::CStruct et déterminez comment les valeurs copiées doivent être isolées ; le travail est terminé lorsque la modification de la struct clonée ne modifie plus l’originale, tandis que la comparaison avec Ruby-FFI conserve le comportement attendu.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Fiddle
require 'fiddle/import'
S = Fiddle::Importer.struct(["int i"])
a = S.malloc
a.i = 10
b = a.clone
b.i = 20
p a.i # 20
p b.i # 20
Ruby-FFI
require 'ffi'
class S < FFI::Struct
layout :i, :int
end
a = S.new
a[:i] = 10
b = a.clone
b[:i] = 20
p a[:i] # 10
p b[:i] # 20
- Langage dominant
- Ruby
- Étoiles
- 195
- Forks
- 53
- Merge moyen
- 23 h 57 min
- PR mergées (30 j)
- 1
Préparer son environnement
Nous n'avons pas encore vérifié les fichiers d'installation de ce projet. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
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.
Autres issues de ruby/fiddle
-
Difficulté 3/5 1-2 jours Accessibilité débutants 52/100
-
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 30/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 45/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 52/100
Toutes les issues de ruby/fiddle
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 90/100
TheOdinProject/curriculum#31423 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
oxidize-rb/rb-sys#807 ·