Protocol

Protocol

Potocol

Description

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 stubbed 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.

Synopsis

use Protocol;

protocol Writer {               # creates a Writer protocol that have a write method
    method write { ... }
}

sub write(Writer $w) {          # accepts a Writer
    $w.write
}

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!

Protocol v0.0.1

Protocol

Authors

  • Fernando Correa de Oliveira

License

Artistic-2.0

Dependencies

Test Dependencies

Provides

  • MetamodelX::Protocol
  • Protocol
  • X::Protocol::NonStubs

The Camelia image is copyright 2009 by Larry Wall. "Raku" is trademark of the Yet Another Society. All rights reserved.