<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<!--
This file was generated by Devel::Cover Version 1.26
Devel::Cover is copyright 2001-2012, Paul Johnson (paul@pjcj.net)
Devel::Cover is free. It is licensed under the same terms as Perl itself.
The latest version of Devel::Cover should be available from my homepage:
http://www.pjcj.net
-->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta>
<meta http-equiv="Content-Language" content="en-us"></meta>
<link rel="stylesheet" type="text/css" href="cover.css"></link>
<link rel="stylesheet" type="text/css" href="cover.css"></link>
<title>File Coverage: lib/Yukki/Web/Plugin.pm</title>
</head>
<body>
<h1>File Coverage</h1>
<table>
<tr><td class="h" align="right">File:</td><td align="left">lib/Yukki/Web/Plugin.pm</td></tr>
<tr><td class="h" align="right">Coverage:</td><td align="left" class="c3">100.0%</td></tr>
</table>
<div><br/></div>
<table>
<tr><th>line</th><th>stmt</th><th>bran</th><th>cond</th><th>sub</th><th>pod</th><th>time</th><th>code</th></tr>
<tr><td class="h">1</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s">package Yukki::Web::Plugin;</td></tr>
<tr><td class="h">2</td><td colspan="7"></td></tr><tr><td class="h">3</td><td><div class="c3">2</div><div class="c3">2</div></td><td></td><td></td><td><div class="c3"><a href="lib-Yukki-Web-Plugin-pm--subroutine.html#L3">2</a></div></td><td></td><td><div>2869</div><div>11</div></td><td class="s">use v5.24;</td></tr>
<tr><td class="h">4</td><td><div class="c3">2</div><div class="c3">2</div><div class="c3">2</div></td><td></td><td></td><td><div class="c3"><a href="lib-Yukki-Web-Plugin-pm--subroutine.html#L4">2</a></div></td><td></td><td><div>11</div><div>5</div><div>12</div></td><td class="s">use utf8;</td></tr>
<tr><td class="h">5</td><td><div class="c3">2</div><div class="c3">2</div><div class="c3">2</div></td><td></td><td></td><td><div class="c3"><a href="lib-Yukki-Web-Plugin-pm--subroutine.html#L5">2</a></div></td><td></td><td><div>41</div><div>5</div><div>11</div></td><td class="s">use Moo;</td></tr>
<tr><td class="h">6</td><td colspan="7"></td></tr><tr><td class="h">7</td><td><div class="c3">2</div><div class="c3">2</div><div class="c3">2</div></td><td></td><td></td><td><div class="c3"><a href="lib-Yukki-Web-Plugin-pm--subroutine.html#L7">2</a></div></td><td></td><td><div>682</div><div>5</div><div>17</div></td><td class="s">use Type::Utils;</td></tr>
<tr><td class="h">8</td><td colspan="7"></td></tr><tr><td class="h">9</td><td><div class="c3">2</div><div class="c3">2</div><div class="c3">2</div></td><td></td><td></td><td><div class="c3"><a href="lib-Yukki-Web-Plugin-pm--subroutine.html#L9">2</a></div></td><td></td><td><div>3264</div><div>7</div><div>16</div></td><td class="s">use namespace::clean;</td></tr>
<tr><td class="h">10</td><td colspan="7"></td></tr><tr><td class="h">11</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s"># ABSTRACT: base class for Yukki plugins</td></tr>
<tr><td class="h">12</td><td colspan="7"></td></tr><tr><td class="h">13 - 60</td><td colspan="6"></td><td class="s"><pre>=head1 SYNOPSIS
package MyPlugins::LowerCase;
use 5.12.1;
use Moo;
use Types::Standard qw( HashRef CodeRef );
extends 'Yukki::Web::Plugin';
has format_helpers => (
is => 'ro',
isa => HashRef[CodeRef],
default => sub { +{
'lc' => \&lc_helper,
} },
);
with 'Yukki::Web::Plugin::Role::FormatHelper';
sub lc_helper {
my ($params) = @_;
return lc $params->{arg};
}
=head1 DESCRIPTION
This is the base class for Yukki plugins. It doesn't do much but allow your plugin access to the application singleton and its configuration. For your plugin to actually do something, you must implement a plugin role. See these roles for details:
=over
=item *
L<Yukki::Web::Plugin::Role::Formatter>. Formats a file for output as HTML.
=item *
L<Yukki::Web::Plugin::Role::FormatHelper>. This gives you the ability to create quick helpers in your yukkitext using the C<{{helper:...}}> notation.
=back
=head1 ATTRIBUTES
=head2 app
This is the L<Yukki::Web> singleton. All the methods required in L<Yukki::Role::App> will be delegated.
=cut</pre></td></tr>
<tr><td class="h">61</td><td colspan="7"></td></tr><tr><td class="h">62</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s">has app => (</td></tr>
<tr><td class="h">63</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s"> is => 'ro',</td></tr>
<tr><td class="h">64</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s"> isa => class_type('Yukki::Web'),</td></tr>
<tr><td class="h">65</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s"> required => 1,</td></tr>
<tr><td class="h">66</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s"> weak_ref => 1,</td></tr>
<tr><td class="h">67</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s"> handles => 'Yukki::Role::App',</td></tr>
<tr><td class="h">68</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s">);</td></tr>
<tr><td class="h">69</td><td colspan="7"></td></tr><tr><td class="h">70</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s">1;</td></tr>
</table>
</body>
</html>