📄 expat.html
字号:
<font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$svg</font>=<font color="#1f32ff">$parser</font>-><font color="#0000ff"><b>{</b></font>__svg<font color="#0000ff"><b>}</b></font>; <font color="#1f32ff">$svg</font>-><font color="#0000ff"><b>{</b></font>-version<font color="#0000ff"><b>}</b></font>=<font color="#1f32ff">$version</font> || <font color="#1f32ff">$parser</font>->SVG_DEFAULT_DECL_VERSION; <font color="#1f32ff">$svg</font>-><font color="#0000ff"><b>{</b></font>-encoding<font color="#0000ff"><b>}</b></font>=<font color="#1f32ff">$encoding</font> || <font color="#1f32ff">$parser</font>->SVG_DEFAULT_DECL_ENCODING; <font color="#1f32ff">$svg</font>-><font color="#0000ff"><b>{</b></font>-standalone<font color="#0000ff"><b>}</b></font>=<font color="#1f32ff">$standalone</font>?<font color="#007400">"yes"</font>:<font color="#007400">"no"</font>; <font color="#1f32ff">$parser</font>-><font color="#ff8204">debug</font><font color="#0000ff"><b>(</b></font><font color="#007400">"XMLDecl"</font>,<font color="#007400">"-version=\"<font color="#1f32ff">$svg</font>->{-version}\""</font>, <font color="#007400">"-encoding=\"<font color="#1f32ff">$svg</font>->{-encoding}\""</font>,<font color="#007400">"-standalone=\"<font color="#1f32ff">$svg</font>->{-standalone}\""</font><font color="#0000ff"><b>)</b></font>;</pre>}<BR><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0"><TR BGCOLOR="#dcab68"><TD WIDTH="200"><A NAME="CODE10"></A><B>import</B></TD><TD>description</TD><TD WIDTH="30"><A HREF="#TOP">top</A></TD><TD WIDTH="30"><A HREF="#CODE9">prev</A></TD><TD WIDTH="30"><A HREF="#CODE11">next</A></TD></TR></TABLE><font color="#0000ff"><b>sub</b></font> <font color="#ff0000"><b>import</b></font> {<pre> <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$package</font>=<font color="#4169e1"><b>shift</b></font>; <font color="#ff0000">## permit an alternative XML::Parser subclass to be our parent class</font><BR> <font color="#0000ff"><b>if</b></font> <font color="#0000ff"><b>(</b></font><font color="#1f32ff">@_</font><font color="#0000ff"><b>)</b></font> <font color="#0000ff"><b>{</b></font> <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$superclass</font>=<font color="#4169e1"><b>shift</b></font>; <font color="#1f32ff">$ISA</font><font color="#0000ff"><b>[</b></font>0<font color="#0000ff"><b>]</b></font>=<font color="#1f32ff">$superclass</font>,<font color="#0000ff"><b>return</b></font> <font color="#0000ff"><b>if</b></font> <font color="#0000ff"><b>eval</b></font> <font color="#4169e1"><b>qq</b></font><font color="#007400">[ require <font color="#1f32ff">$superclass</font>; import <font color="#1f32ff">$superclass</font> qw(<font color="#1f32ff">@_</font>); ]</font>; <font color="#4169e1"><b>die</b></font> <font color="#007400">"Parent parser class <font color="#1f32ff">$superclass</font> not found\n"</font>; <font color="#0000ff"><b>}</b></font></pre>}<BR><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0"><TR BGCOLOR="#dcab68"><TD WIDTH="200"><A NAME="CODE11"></A><B>new</B></TD><TD>description</TD><TD WIDTH="30"><A HREF="#TOP">top</A></TD><TD WIDTH="30"><A HREF="#CODE10">prev</A></TD><TD WIDTH="30"><A HREF="#CODE12">next</A></TD></TR></TABLE><font color="#0000ff"><b>sub</b></font> <font color="#ff0000"><b>new</b></font> {<pre> <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$proto</font>=<font color="#4169e1"><b>shift</b></font>; <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$class</font>=<font color="#4169e1"><b>ref</b></font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">$proto</font><font color="#0000ff"><b>)</b></font> || <font color="#1f32ff">$proto</font>; <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">%attrs</font>=<font color="#1f32ff">@_</font>; <font color="#ff0000">## pass on non-minus-prefixed attributes to XML::Parser</font><BR> <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">%parser_attrs</font>; <font color="#0000ff"><b>foreach</b></font> <font color="#0000ff"><b>(</b></font><font color="#4169e1"><b>keys</b></font> <font color="#1f32ff">%attrs</font><font color="#0000ff"><b>)</b></font> <font color="#0000ff"><b>{</b></font> <font color="#1f32ff">$parser_attrs</font><font color="#0000ff"><b>{</b></font><font color="#1f32ff">$_</font><font color="#0000ff"><b>}</b></font>=<font color="#4169e1"><b>delete</b></font> <font color="#1f32ff">$attrs</font><font color="#0000ff"><b>{</b></font><font color="#1f32ff">$_</font><font color="#0000ff"><b>}</b></font> <font color="#0000ff"><b>unless</b></font> <font color="#006400"><b>/^-/</b></font>; <font color="#0000ff"><b>}</b></font> <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$parser</font>=<font color="#1f32ff">$class</font>-><font color="#8000ff"><b>SUPER</b></font>::<font color="#ff8204">new</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">%parser_attrs</font><font color="#0000ff"><b>)</b></font>; <font color="#1f32ff">$parser</font>-><font color="#ff8204">setHandlers</font><font color="#0000ff"><b>(</b></font> XMLDecl => <font color="#0000ff"><b>sub</b></font> <font color="#0000ff"><b>{</b></font> <font color="#ff8204">XMLDecl</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">$parser</font>, <font color="#1f32ff">@_</font><font color="#0000ff"><b>)</b></font> <font color="#0000ff"><b>}</b></font>, Doctype => <font color="#0000ff"><b>sub</b></font> <font color="#0000ff"><b>{</b></font> <font color="#ff8204">Doctype</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">$parser</font>, <font color="#1f32ff">@_</font><font color="#0000ff"><b>)</b></font> <font color="#0000ff"><b>}</b></font>, Init => <font color="#0000ff"><b>sub</b></font> <font color="#0000ff"><b>{</b></font> <font color="#ff8204">StartDocument</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">$parser</font>, <font color="#1f32ff">@_</font><font color="#0000ff"><b>)</b></font> <font color="#0000ff"><b>}</b></font>, Final => <font color="#0000ff"><b>sub</b></font> <font color="#0000ff"><b>{</b></font> <font color="#ff8204">FinishDocument</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">$parser</font>, <font color="#1f32ff">@_</font><font color="#0000ff"><b>)</b></font> <font color="#0000ff"><b>}</b></font>, Start => <font color="#0000ff"><b>sub</b></font> <font color="#0000ff"><b>{</b></font> <font color="#ff8204">StartTag</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">$parser</font>, <font color="#1f32ff">@_</font><font color="#0000ff"><b>)</b></font> <font color="#0000ff"><b>}</b></font>, End => <font color="#0000ff"><b>sub</b></font> <font color="#0000ff"><b>{</b></font> <font color="#ff8204">EndTag</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">$parser</font>, <font color="#1f32ff">@_</font><font color="#0000ff"><b>)</b></font> <font color="#0000ff"><b>}</b></font>, Char => <font color="#0000ff"><b>sub</b></font> <font color="#0000ff"><b>{</b></font> <font color="#ff8204">Text</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">$parser</font>, <font color="#1f32ff">@_</font><font color="#0000ff"><b>)</b></font> <font color="#0000ff"><b>}</b></font>, Proc => <font color="#0000ff"><b>sub</b></font> <font color="#0000ff"><b>{</b></font> <font color="#ff8204">PI</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">$parser</font>, <font color="#1f32ff">@_</font><font color="#0000ff"><b>)</b></font> <font color="#0000ff"><b>}</b></font>, Comment => <font color="#0000ff"><b>sub</b></font> <font color="#0000ff"><b>{</b></font> <font color="#ff8204">Comment</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">$parser</font>, <font color="#1f32ff">@_</font><font color="#0000ff"><b>)</b></font> <font color="#0000ff"><b>}</b></font>, <font color="#0000ff"><b>)</b></font>; <font color="#ff0000">## minus-prefixed attributes stay here, double-minus to SVG object</font><BR> <font color="#0000ff"><b>foreach</b></font> <font color="#0000ff"><b>(</b></font><font color="#4169e1"><b>keys</b></font> <font color="#1f32ff">%attrs</font><font color="#0000ff"><b>)</b></font> <font color="#0000ff"><b>{</b></font> <font color="#0000ff"><b>if</b></font> <font color="#0000ff"><b>(</b></font><font color="#006400"><b>/^-(-.+)$/</b></font><font color="#0000ff"><b>)</b></font> <font color="#0000ff"><b>{</b></font> <font color="#1f32ff">$parser</font>-><font color="#0000ff"><b>{</b></font>__svg_attr<font color="#0000ff"><b>}</b></font><font color="#0000ff"><b>{</b></font><font color="#1f32ff">$1</font><font color="#0000ff"><b>}</b></font>=<font color="#1f32ff">$attrs</font><font color="#0000ff"><b>{</b></font><font color="#1f32ff">$_</font><font color="#0000ff"><b>}</b></font>; <font color="#0000ff"><b>}</b></font> <font color="#0000ff"><b>else</b></font> <font color="#0000ff"><b>{</b></font> <font color="#1f32ff">$parser</font>-><font color="#0000ff"><b>{</b></font><font color="#1f32ff">$_</font><font color="#0000ff"><b>}</b></font>=<font color="#1f32ff">$attrs</font><font color="#0000ff"><b>{</b></font><font color="#1f32ff">$_</font><font color="#0000ff"><b>}</b></font>; <font color="#0000ff"><b>}</b></font> <font color="#0000ff"><b>}</b></font> <font color="#0000ff"><b>return</b></font> <font color="#1f32ff">$parser</font>;</pre>}<BR><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0"><TR BGCOLOR="#dcab68"><TD WIDTH="200"><A NAME="CODE12"></A><B>parse_file</B></TD><TD>description</TD><TD WIDTH="30"><A HREF="#TOP">top</A></TD><TD WIDTH="30"><A HREF="#CODE11">prev</A></TD><TD WIDTH="30">next</TD></TR></TABLE><font color="#0000ff"><b>sub</b></font> <font color="#ff0000"><b>parse_file</b></font> {<pre> <font color="#4169e1"><b>shift</b></font>-><font color="#ff8204">parsefile</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">@_</font><font color="#0000ff"><b>)</b></font>;</pre>}<BR><A NAME="General"></A><HR><H2>General documentation</H2><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0"><TR BGCOLOR="#4492df"><TD><A NAME="_pod_AUTHOR"><B>AUTHOR</A></B></TD><TD><A HREF="#TOP">top</A></TD></TR><TR><TD COLSPAN="2"><pre>Peter Wainwright, <a href="mailto:peter.wainwright@cybrid.net">peter.wainwright@cybrid.net</a><BR></pre></TD></TR><TR BGCOLOR="#4492df"><TD><A NAME="_pod_SEE ALSO"><B>SEE ALSO</A></B></TD><TD><A HREF="#TOP">top</A></TD></TR><TR><TD COLSPAN="2"><pre><a href="#_pod_SVG">SVG</a>, <a href="../Parser.html" target="urlWin"><b>SVG::Parser</b></a>, <a href="SAX.html" target="urlWin"><b>SVG::Parser::SAX</b></a>, <a href="../Parser.html" target="urlWin"><b>XML::Parser</b></a><BR></pre></TD></TR></TABLE></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -