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?
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?
Réponses:
Il n'y a pas d'équivalent direct à carp
, mais vous pouvez démarrer raku avec le --ll-exception
paramè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 Carp
module. La création d'un carp
sous ne devrait pas être trop difficile, étant donné qu'il existe une Backtrace
classe:
$ 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
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. :-)