# # $Id: Plugin.pm,v 1.3 2006/11/12 09:43:38 6-o Exp $ # package Text::HikiDoc::Plugin; use strict; use warnings; sub new { my $class = shift; my $obj = shift; my $plugin_type = shift; my $self = bless { %$obj, PLUGIN_TYPE => $plugin_type, } , $class; return $self; } sub to_html { my $self = shift; my $str = shift; return $str; } #sub DESTROY { # my $self = shift; # print STDERR $self,"\t",$self->{PLUGIN_TYPE},"\n"; #} 1; __END__ =head1 NAME Text::HikiDoc::Plugin - Base class of plug-in module for Text::HikiDoc . =head1 SYNOPSIS package Text::HikiDoc::Plugin::your-plugin use base 'Text::HikiDoc::Plugin'; sub to_html { my $self = shift; my @args = @_; # # plug-in logic # return $string; } =head1 DESCRIPTION Text::HikiDoc::Plugin can add a new format to Text::HikiDoc . =head1 Methods =head2 to_html(ARGS) =over 4 When Text::HikiDoc encounters the description of {{your-plugin}}, Text::HikiDoc::Plugin::your-plugin::to_html() is executed. And {{your-plugin} is replaced with the returned character string. =over 4 =item ARGS There are some methods for you to pass the plug-in the argument. The following result the same all. {{br '2'}} or {{br(2)}} or {{br '2' }} =back =back =head1 SEE ALSO =over 4 =item Text::HikiDoc =back =cut