Scroll to navigation

Syntax::HTML(3pm) User Contributed Perl Documentation Syntax::HTML(3pm)


Embperl::Syntax::HTML - define the syntax for HTML



Class derived from Embperl::Syntax to define the syntax for HTML. This class does not add functionalty of it own, it just provides methods add definitions for derived classes to implement their own tags.


Embperl::Syntax::HTML defines the following methods:

Embperl::Syntax::HTML -> new / $self -> new

Create a new syntax class. This method should only be called inside a constructor of a derived class.

AddTag ($tagname, $attrs, $attrsurl, $attrsnoval, $procinfo, $taginfo, $addsess)

Add a new HTML tag.

Name of the HTML tag
List of attributes that should be parsed out.
List of attributes that should be parsed out. Any output inside the attribute value is url escaped.
List of attributes that should be parsed out and doesn't contain a value.
Processor info. See Embperl::Syntax for a definition of procinfo.
Additional tag definitions. See Embperl::Syntax for more infos.
If set to 1 session id will be added to attributes passed via $attrsurl. If set to 2 a hidden input tag with the session id will be added.

AddTagInside ($tagname, $attrs, $attrsurl, $attrsnoval, $procinfo)

Same as AddTag, but tag could be also used inside of another tag. (e.g. <sometag <someothertag> > ). This is not HTML or XML compatible, but maybe useful for implementing tagslibs etc. sometimes.

AddComment ($tagname, $attrs, $attrsurl, $attrsnoval, $procinfo)

Add a new HTML comment. Parameters are the same as for "AddTag".

AddTagBlock ($tagname, $attrs, $attrsurl, $attrsnoval, $procinfo)

Add a new HTML tag with start and end tag (e.g. <table> and </table>). Parameters are the same as for "AddTag".

AddTagWithStart ($tagname, $startname, $attrs, $attrsurl, $attrsnoval, $procinfo)

Add a new HTML tag which is an endtag for another tag. In opposite to "AddTagBlock" the end tag can, but need not exists in the source. Parameters are the same as for "AddTag". Addtionaly the name of the starttag must be specified.


G. Richter (richter at embperl dot org)

See Also


2023-01-22 perl v5.36.0