Quel est l'analogue raku de la carpe de Perl 5?

9

Par défaut, le "die" de Raku rapporte le numéro de ligne où se trouve le "die", que se passe-t-il si vous souhaitez le numéro de ligne du contexte appelant, ala "carpe" avec perl 5?

Joseph Brenner
la source
FWIW Je travaille sur un module maintenant. Publiera à nouveau une fois que j'aurai terminé.
user0721090601

Réponses:

10

Il n'y a pas d'équivalent direct à carp, mais vous pouvez démarrer raku avec le --ll-exceptionparamètre, qui créera une trace de pile complète en cas d'erreur d'exécution.

Je suppose que personne n'a encore réussi à créer un Carpmodule. La création d'un carpsous ne devrait pas être trop difficile, étant donné qu'il existe une Backtraceclasse:

$ raku -e 'say "file: {.file}:{.line}" for Backtrace.new' 
file: SETTING::src/core.c/Backtrace.pm6:94
file: SETTING::src/core.c/Backtrace.pm6:94
file: -e:1
Elizabeth Mattijsen
la source
3

Il y a maintenant un module Carp disponible sur GitHub et devrait bientôt être disponible dans l'écosystème Raku. Il ne prend actuellement en charge que les fonctionnalités les plus élémentaires, mais au fil du temps, il devrait être amélioré.

Donc, la réponse à votre question est d'utiliser Carp comme vous le feriez en Perl 5. :-)

user0721090601
la source