langs a-z
This commit is contained in:
parent
db842d013d
commit
d066446780
11389 changed files with 98361 additions and 1020 deletions
23
Task/Abstract-type/Perl-6/abstract-type.pl6
Normal file
23
Task/Abstract-type/Perl-6/abstract-type.pl6
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
use v6;
|
||||
|
||||
role A {
|
||||
# must be filled in by the class it is composed into
|
||||
method abstract() { ... };
|
||||
|
||||
# can be overridden in the class, but that's not mandatory
|
||||
method concrete() { say '# 42' };
|
||||
}
|
||||
|
||||
class SomeClass does A {
|
||||
method abstract() {
|
||||
say "# made concrete in class"
|
||||
}
|
||||
}
|
||||
|
||||
my $obj = SomeClass.new;
|
||||
$obj.abstract();
|
||||
$obj.concrete();
|
||||
|
||||
# output:
|
||||
# made concrete in class
|
||||
# 42
|
||||
Loading…
Add table
Add a link
Reference in a new issue