Ich fange an, Moose zu verwenden. Hier ist mein Testpaket Code:Moose: Subtype Nachricht wird nicht angezeigt
package MyTest;
use Moose;
use Moose::Util::TypeConstraints;
subtype 'MyStatus',
as 'Int',
where { $_ >= 0 && $_ < 10 },
message { "Wrong status: $_" };
has status => (is => 'rw', isa => 'Maybe[MyStatus]');
no Moose; 1;
Und hier ist das Programm:
use strict;
use warnings;
use MyTest;
my $t1 = MyTest->new('status' => 3);
$t1->status(100);
Ich erwartete eine bekommen "Falscher Status: 100" Fehler, aber stattdessen habe ich dies:
Attribut (Status) übergibt die Typbeschränkung nicht, weil: Validierung fehlgeschlagen für 'Maybe [MyStatus]' mit Wert 100 bei Accessor MyTest :: s tatus (definiert in MyTest.pm Zeile 10) Zeile 4
Wie funktioniert diese Nachricht? Vielen Dank!
Bitte geben Sie keine Fehlermeldungen ein. Kopieren Sie sie und fügen Sie sie stattdessen ein. Es gibt einen Schreibfehler in Ihrem Kursivkurs. ;-) – simbabque
habe ich kopiert und eingefügt – AndyH
Dann war es wohl ein Zeilenumbruch in der Ausgabe, weil dein Terminalfenster zu klein für den Text war. Vergiss es. ;) – simbabque