</div>
<div class="slide">
- <h1>Hot Role-on-Role Action</h1>
+ <h1>Roles With Roles</h1>
<pre><code>package Comparable;
use Moose::Role;
</div>
<div class="slide">
- <h1>Hot Role-on-Role Action</h1>
+ <h1>Roles With Roles</h1>
<pre><code>package TestsEquality;
use Moose::Role;
<div class="slide">
<h1>Delayed Conflict</h1>
- <pre><code>package StateOfTexas;
+ <pre><code>package SysadminAssassin;
with 'Killer';</code></pre>
<ul>
- <li><code>StateOfTexas</code> must implement its own <code>execute</code></li>
+ <li><code>SysadminAssassin</code> must implement its own <code>execute</code></li>
<li>But loading the <code>Killer</code> role by itself does not cause an error</li>
</ul>
</div>
Num
Int
ClassName
+ RoleName
</pre>
</div>
<hr />
-<pre><code>subtype 'DateTime',
+<pre><code>subtype 'DateTime',
as 'Object',
where { $_->isa('DateTime') },
message { ... };</code></pre>
<hr />
<pre><code>subtype 'Printable',
- as 'Object',
+ as 'Object',
where
{ Moose::Util::does_role(
$_, 'Printable' ) },
<pre><code>my %ok = map { $_ => 1 }
qw( red blue green );
-subtype 'Color'
+subtype 'Color'
as 'Str',
where { $ok{$_} },
message { ... };</code></pre>