Cursus Raku / Obiecta, introitus et exitus, et exceptiones / Exceptiones

Exceptiones per try capere

Cum aliquid in programmate Raku male cadit — archivum deest, expressum dieexceptio iacitur. Ex more exceptio non tractata programma sistit. Clausula try tibi permittit codicem qui deficere possit currere sine ruina.

Codicem periculosum in clausulam try involvis. Si exceptio intus iacitur, clausula ibi desinit, sed programma pergit:

my $result = try {
    die 'Boom!';
};

say "Still works";

die a try capitur, itaque programma non ruit — recta ad enuntiatum sequens pergit et imprimit:

Still works

Cum clausula ita deficit, valorem indefinitum reddit, itaque $result indefinitus est:

say $result.defined; # False

Exceptio capta in variabili speciali $! servatur. Nuntium eius inde legere potes:

say $!.message; # Boom!

Itaque try errorem fatalem in aliquid vertit quod programma tuum inspicere et ad quod reagere potest. Si clausula sine ulla exceptione currit, $result valorem eius continet, et $! indefinitus est.

Etiam in hac sectione

Exercitatio

Sequuntur 1 quiz de contentis huius sectionis.

Exercitationes

In hac sectione sunt 3 exercitationes. Omnia huius sectionis argumenta inspice antequam exercitationes incipias.

  1. Errorem cape
  2. Cum nihil male cadit
  3. Conatus an valor praedefinitus

Exceptiones   |   Non omnis error statim apparet