`break /foo/` for matched method
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 25/100
Piste de recherche
No files, tests, or implementation entry points are named. Start by tracing how the debugger parses and installs the existing break command, then determine how pending breakpoints and future method definitions are handled. Done means an agreed regexp notation and behavior for matching method names, including tests for existing and future definitions.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
gdb has rbreak regexp (https://sourceware.org/gdb/onlinedocs/gdb/Set-Breaks.html) and maybe debug.gem can provide similar feature.
related to: https://github.com/ruby/debug/issues/655
Questions:
- Notation:
break /foo/all methods which names containsfoo.C1#foo,C2#foobar,C3#bazfoo, ...
break C#/foo/: C's methods which containsfoo.C#foo,C#foobar, ...- Seem's ugly...
break /C/#foo: Method foo of classes which names containC.C1#fooC2#foo, ...- Seems ugly too.
- Only allow
break /C#foo/orbreak /C\.foo/and so on? - Only allow to match method name?
- It seems simple. We can extend it later.
- Behavior:
- Set breakpoints for existing matched methods (no problem)
- Set breakpoints for future defined matched methods?
break /initialize/means allinitializemethods (and defined in future) can be trapped.- maybe it is convenient to support it.
- Can we support
break /obj.foo/style?- maybe no if we allow future defined methods.
So current idea is:
break /regexp/set method breakpoints where the method name matched with Class/Module/method name.break /foo/should be matched with:C#fooD.fooE.bazfooboo- We can not match on class/module names (at least now).
- It leaves as a pending breakpoint and set breakpoint in future definitions. User needs to del it if you don't need more.
- Langage dominant
- Ruby
- Étoiles
- 1.3k
- Forks
- 146
- Métriques de merge des PR
- Aucune PR mergée en 30 j
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.
Autres issues de ruby/debug
-
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
-
Support exceptionOptions in setExceptionBreakpoints to catch arbitrary exception classes via DAP Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
-
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
-
Difficulté 4/5 3-5 jours Accessibilité débutants 52/100
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
Toutes les issues de ruby/debug
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
palladius/rails8-app-on-gcp#145 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
rubocop/rubocop-rspec#2236 ·
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
riscv/riscv-unified-db#2624 · 1 réaction ·
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100