NAME¶
HTML::TableParser::Table - support class for HTML::TableParser
DESCRIPTION¶
This class is used to keep track of information related to a table and to create
the information passed back to the user callbacks. It is in charge of
marshalling the massaged header and row data to the user callbacks.
An instance is created when the controlling TableParser class finds a
"<table" tag. The object is given an id based upon which table it
is to work on. Its methods are invoked from the TableParser callbacks when
they run across an appropriate tag ("tr", "th",
"td"). The object is destroyed when the matching "/table"
tag is found.
Since tables may be nested, multiple
HTML::TableParser::Table objects may
exist simultaneously.
HTML::TableParser uses two pieces of information
held by this class -- ids and process. The first is an array of table ids, one
element per level of table nesting. The second is a flag indicating whether
this table is being processed (i.e. it matches a requested table) or being
ignored. Since
HTML::TableParser uses the ids information from an
existing table to initialize a new table, it first creates an empty sentinel
(place holder) table (by calling the
HTML::TableParser::Table
constructor with no arguments).
The class handles missing "/tr", "/td", and "/th"
tags. As such (especially when handling multi-row headers) user callbacks may
be slightly delayed (and data cached). It also handles rows with overlapping
columns
LICENSE¶
This software is released under the GNU General Public License. You may find a
copy at
http://www.fsf.org/copyleft/gpl.html
AUTHOR¶
Diab Jerius (djerius@cpan.org)
SEE ALSO¶
HTML::Parser, HTML::TableExtract.