Top-level role for all exobrain messages.
payload size => ( isa => 'Int' );
Convenience method which sets the 'payload' trait on an attribute, as well as marking it as 'ro' and required by default (these can be overridden).
my $namespace = $message->namespace;
Provides the namespace of the message type in question. By default this is the class name with the
Exobrain prefix stripped, but individual message classes are free to define their own namespaces.
my $data = $message->data;
Messages automatically create a data method (needed for transmitting over the exobrain bus) by tallying payload attributes.
Sends the message across the exobrain bus. If no socket is provided, the one from the exobrain object (if we were built with one) is used.
This method is invoked automatically unless the
nosend option is used when the message was created.
This generates a warning (and does NOT send the packet) if the
_sent flag on the message is set. This flag is set automatically after sending.
my $pkt_debug = $msg->dump;
Provides a string containing a dump of universal packet attributes. Intended for debugging.
Paul Fenwick <firstname.lastname@example.org>
This software is copyright (c) 2014 by Paul Fenwick.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.