Provided by: libtext-mediawikiformat-perl_1.0-2_all bug


       Text::MediawikiFormat::Blocks - blocktypes for Text::MediawikiFormat


       None.  Use Text::MediawikiFormat as the public interface, unless you want to create your
       own block type.


       This module merely creates subclasses of Text::MediawikiFormat::Block, which is the
       interesting code.  A block is a collection of related lines, such as a code block (text to
       display verbatim in a monospaced font), a header, an unordered list, an ordered list, and
       a paragraph (text to display in a proportional font).

       Every block extends "Text::MediawikiFormat::Block".


       The following methods exist:

       ·   "new( %args )"

           Creates and returns a new block.  The valid arguments are:

           ·   "text"

               The text of the line found in the block.

           ·   "args"

               The arguments captured by the block-identifying regular expression.

           ·   "level"

               The level of indentation for the block (usually only useful for list blocks).

           ·   "tags"

               The tags in effect for the current type of wiki formatting.

           ·   "opts"

               The options in effect for the current type of wiki formatting.

           Use the accessors of the same names to retrieve the values of the attributes.

       ·   "add_text( @lines_of_text )"

           Adds a list of lines of text to the current text for the block.  This is very useful
           when you encounter a block and want to merge it with the previous block of the same

       ·   "add_args( @arguments )"

           Adds further arguments to the block; useful when merging blocks.

       ·   "formatted_text()"

           Returns text formatted appropriately for this block.  Blocks don't have to have
           formatters, but they may.

       ·   "formatter( $line_of_text )"

           Formats the $line using "Text::MediawikiFormat::format_line()".  You can add your own
           formatter here; this is worth overriding.

       ·   "merge( $next_block )"

           Merges the current block with $next_block (the next block encountered) if they're of
           the same type and are at the same level.  This adds the text and args of $next_block
           to the current block.  It's your responsibility to remove $next_block from whatever
           your code iterates over.

       ·   "nests()"

           Returns true if this block should nest (as in lists and unordered lists) for the
           active wiki formatting.

       ·   "nest( $next_block )"

           Nests $next_block under this block if the both nest and if $next_block has a level
           greater than the current block.  This actually adds $next_block as a text item within
           the current block.  Beware.


       chromatic, "chromatic at wgz dot org"


       No known bugs.


       Copyright (c) 2006, chromatic.  Some rights reserved.

       This module is free software; you can use, redistribute, and modify it under the same
       terms as Perl 5.8.x.