Rand Stats



Build Status



The idea here is to have a "set of methods". So, you can test a class based on that set of methods. But different from roles with stubed methods it doesn't need do be "doesed" to be matched. It does create a subset but using a different syntax, and will check the methods.


use Protocol;

protocol Writer {
    method write { ... }

multi write(Writer $w) {

multi write($data) {
    say $data

class JustAGreeter {            # no roles, parents nor protocols declared on the class
    method write {              # it has the write method, so it attends to the protocol
        say "Hello protocol!"

write JustAGreeter.new;         # prints: Hello protocol!