📄 expat.html
字号:
<font color="#1f32ff">$svg</font>-><font color="#0000ff"><b>{</b></font>-pubid<font color="#0000ff"><b>}</b></font>=<font color="#1f32ff">$pubid</font> || <font color="#1f32ff">$parser</font>->SVG_DEFAULT_DOCTYPE_PUBID; <font color="#1f32ff">$svg</font>-><font color="#0000ff"><b>{</b></font>-internal<font color="#0000ff"><b>}</b></font>=<font color="#1f32ff">$internal</font>?<font color="#007400">"yes"</font>:<font color="#007400">"no"</font>; <font color="#ff0000">## this needs further work...</font><BR> <font color="#1f32ff">$parser</font>-><font color="#ff8204">debug</font><font color="#0000ff"><b>(</b></font><font color="#007400">"Doctype"</font>, <font color="#007400">"-docroot=\"<font color="#1f32ff">$svg</font>->{-docroot}\""</font>, <font color="#007400">"-sysid=\"<font color="#1f32ff">$svg</font>->{-sysid}\""</font>, <font color="#007400">"-pubid=\"<font color="#1f32ff">$svg</font>->{-pubid}\""</font>, <font color="#007400">"-internal=\"<font color="#1f32ff">$svg</font>->{-internal}\""</font> <font color="#0000ff"><b>)</b></font>;</pre>}<BR><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0"><TR BGCOLOR="#dcab68"><TD WIDTH="200"><A NAME="CODE3"></A><B>EndTag</B></TD><TD>description</TD><TD WIDTH="30"><A HREF="#TOP">top</A></TD><TD WIDTH="30"><A HREF="#CODE2">prev</A></TD><TD WIDTH="30"><A HREF="#CODE4">next</A></TD></TR></TABLE><font color="#0000ff"><b>sub</b></font> <font color="#ff0000"><b>EndTag</b></font> {<pre> <font color="#0000ff"><b>my</b></font> <font color="#0000ff"><b>(</b></font><font color="#1f32ff">$parser</font>,<font color="#1f32ff">$expat</font>,<font color="#1f32ff">$type</font><font color="#0000ff"><b>)</b></font>=<font color="#1f32ff">@_</font>; <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$elements</font>=<font color="#1f32ff">$parser</font>-><font color="#0000ff"><b>{</b></font>__elements<font color="#0000ff"><b>}</b></font>; <font color="#4169e1"><b>pop</b></font> @$elements;</pre>}<BR><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0"><TR BGCOLOR="#dcab68"><TD WIDTH="200"><A NAME="CODE4"></A><B>FinishDocument</B></TD><TD>description</TD><TD WIDTH="30"><A HREF="#TOP">top</A></TD><TD WIDTH="30"><A HREF="#CODE3">prev</A></TD><TD WIDTH="30"><A HREF="#CODE5">next</A></TD></TR></TABLE><font color="#0000ff"><b>sub</b></font> <font color="#ff0000"><b>FinishDocument</b></font> {<pre> <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$parser</font>=<font color="#4169e1"><b>shift</b></font>; <font color="#1f32ff">$parser</font>-><font color="#ff8204">debug</font><font color="#0000ff"><b>(</b></font><font color="#007400">"Done"</font><font color="#0000ff"><b>)</b></font>; <font color="#0000ff"><b>return</b></font> <font color="#1f32ff">$parser</font>-><font color="#0000ff"><b>{</b></font>__svg<font color="#0000ff"><b>}</b></font>;</pre>}<BR><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0"><TR BGCOLOR="#dcab68"><TD WIDTH="200"><A NAME="CODE5"></A><B>PI</B></TD><TD>description</TD><TD WIDTH="30"><A HREF="#TOP">top</A></TD><TD WIDTH="30"><A HREF="#CODE4">prev</A></TD><TD WIDTH="30"><A HREF="#CODE6">next</A></TD></TR></TABLE><font color="#0000ff"><b>sub</b></font> <font color="#ff0000"><b>PI</b></font> {<pre> <font color="#0000ff"><b>my</b></font> <font color="#0000ff"><b>(</b></font><font color="#1f32ff">$parser</font>,<font color="#1f32ff">$expat</font>,<font color="#1f32ff">$target</font>,<font color="#1f32ff">$data</font><font color="#0000ff"><b>)</b></font>=<font color="#1f32ff">@_</font>; <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$elements</font>=<font color="#1f32ff">$parser</font>-><font color="#0000ff"><b>{</b></font>__elements<font color="#0000ff"><b>}</b></font>; <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$parent</font>=<font color="#1f32ff">$elements</font>-><font color="#0000ff"><b>[</b></font>-1<font color="#0000ff"><b>]</b></font>; <font color="#006400"><b>/^<\?(.*)\?>/</b></font>; <font color="#1f32ff">$parent</font>-><font color="#ff8204">pi</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">$1</font><font color="#0000ff"><b>)</b></font>; <font color="#1f32ff">$parser</font>-><font color="#ff8204">debug</font><font color="#0000ff"><b>(</b></font><font color="#007400">"PI"</font>,<font color="#1f32ff">$_</font><font color="#0000ff"><b>)</b></font>;</pre>}<BR><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0"><TR BGCOLOR="#dcab68"><TD WIDTH="200"><A NAME="CODE6"></A><B>StartDocument</B></TD><TD>description</TD><TD WIDTH="30"><A HREF="#TOP">top</A></TD><TD WIDTH="30"><A HREF="#CODE5">prev</A></TD><TD WIDTH="30"><A HREF="#CODE7">next</A></TD></TR></TABLE><font color="#0000ff"><b>sub</b></font> <font color="#ff0000"><b>StartDocument</b></font> {<pre> <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$parser</font>=<font color="#4169e1"><b>shift</b></font>; <font color="#ff0000">## gather SVG constuctor attributes</font><BR> <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">%svg_attr</font>; <font color="#1f32ff">%svg_attr</font>=%<font color="#0000ff"><b>{</b></font><font color="#4169e1"><b>delete</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="#0000ff"><b>if</b></font> <font color="#4169e1"><b>exists</b></font> <font color="#1f32ff">$parser</font>-><font color="#0000ff"><b>{</b></font>__svg_attr<font color="#0000ff"><b>}</b></font>; <font color="#1f32ff">$svg_attr</font><font color="#0000ff"><b>{</b></font>-nostub<font color="#0000ff"><b>}</b></font>=1; <font color="#ff0000">## instantiate SVG document object</font><BR> <font color="#1f32ff">$parser</font>-><font color="#0000ff"><b>{</b></font>__svg<font color="#0000ff"><b>}</b></font>=<font color="#0000ff"><b>new</b></font> <font color="#ff8204">SVG</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">%svg_attr</font><font color="#0000ff"><b>)</b></font>; <font color="#ff0000">## empty element list</font><BR> <font color="#1f32ff">$parser</font>-><font color="#0000ff"><b>{</b></font>__elements<font color="#0000ff"><b>}</b></font>=<font color="#0000ff"><b>[</b></font><font color="#0000ff"><b>]</b></font>; <font color="#1f32ff">$parser</font>-><font color="#ff8204">debug</font><font color="#0000ff"><b>(</b></font><font color="#007400">"Start"</font>,<font color="#1f32ff">$parser</font>.<font color="#007400">"/"</font>.<font color="#1f32ff">$parser</font>-><font color="#0000ff"><b>{</b></font>__svg<font color="#0000ff"><b>}</b></font><font color="#0000ff"><b>)</b></font>;</pre>}<BR><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0"><TR BGCOLOR="#dcab68"><TD WIDTH="200"><A NAME="CODE7"></A><B>StartTag</B></TD><TD>description</TD><TD WIDTH="30"><A HREF="#TOP">top</A></TD><TD WIDTH="30"><A HREF="#CODE6">prev</A></TD><TD WIDTH="30"><A HREF="#CODE8">next</A></TD></TR></TABLE><font color="#0000ff"><b>sub</b></font> <font color="#ff0000"><b>StartTag</b></font> {<pre> <font color="#0000ff"><b>my</b></font> <font color="#0000ff"><b>(</b></font><font color="#1f32ff">$parser</font>,<font color="#1f32ff">$expat</font>,<font color="#1f32ff">$type</font>,<font color="#1f32ff">%attrs</font><font color="#0000ff"><b>)</b></font>=<font color="#1f32ff">@_</font>; <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$elements</font>=<font color="#1f32ff">$parser</font>-><font color="#0000ff"><b>{</b></font>__elements<font color="#0000ff"><b>}</b></font>; <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="#0000ff"><b>if</b></font> <font color="#0000ff"><b>(</b></font>@$elements<font color="#0000ff"><b>)</b></font> <font color="#0000ff"><b>{</b></font> <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$parent</font>=<font color="#1f32ff">$elements</font>-><font color="#0000ff"><b>[</b></font>-1<font color="#0000ff"><b>]</b></font>; <font color="#4169e1"><b>push</b></font> @$elements, <font color="#1f32ff">$parent</font>-><font color="#ff8204">element</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">$type</font>,<font color="#1f32ff">%attrs</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">$svg</font>-><font color="#0000ff"><b>{</b></font>-inline<font color="#0000ff"><b>}</b></font>=1 <font color="#0000ff"><b>if</b></font> <font color="#1f32ff">$type</font> <font color="#0000ff"><b>ne</b></font> <font color="#007400">"svg"</font>; <font color="#ff0000">##inlined</font><BR> <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$el</font>=<font color="#1f32ff">$svg</font>-><font color="#ff8204">element</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">$type</font>,<font color="#1f32ff">%attrs</font><font color="#0000ff"><b>)</b></font>; <font color="#1f32ff">$svg</font>-><font color="#0000ff"><b>{</b></font>-document<font color="#0000ff"><b>}</b></font> = <font color="#1f32ff">$el</font>; <font color="#4169e1"><b>push</b></font> @$elements, <font color="#1f32ff">$el</font>; <font color="#0000ff"><b>}</b></font> <font color="#1f32ff">$parser</font>-><font color="#ff8204">debug</font><font color="#0000ff"><b>(</b></font><font color="#007400">"Element"</font>,<font color="#1f32ff">$type</font><font color="#0000ff"><b>)</b></font>;</pre>}<BR><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0"><TR BGCOLOR="#dcab68"><TD WIDTH="200"><A NAME="CODE8"></A><B>Text</B></TD><TD>description</TD><TD WIDTH="30"><A HREF="#TOP">top</A></TD><TD WIDTH="30"><A HREF="#CODE7">prev</A></TD><TD WIDTH="30"><A HREF="#CODE9">next</A></TD></TR></TABLE><font color="#0000ff"><b>sub</b></font> <font color="#ff0000"><b>Text</b></font> {<pre> <font color="#0000ff"><b>my</b></font> <font color="#0000ff"><b>(</b></font><font color="#1f32ff">$parser</font>,<font color="#1f32ff">$expat</font>,<font color="#1f32ff">$text</font><font color="#0000ff"><b>)</b></font>=<font color="#1f32ff">@_</font>; <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$elements</font>=<font color="#1f32ff">$parser</font>-><font color="#0000ff"><b>{</b></font>__elements<font color="#0000ff"><b>}</b></font>; <font color="#0000ff"><b>return</b></font> <font color="#0000ff"><b>if</b></font> <font color="#1f32ff">$text</font>=~<font color="#006400"><b>/^\s*$/s</b></font>; <font color="#ff0000">##ignore redundant whitespace</font><BR> <font color="#0000ff"><b>my</b></font> <font color="#1f32ff">$parent</font>=<font color="#1f32ff">$elements</font>-><font color="#0000ff"><b>[</b></font>-1<font color="#0000ff"><b>]</b></font>; <font color="#1f32ff">$parent</font>-><font color="#ff8204">cdata</font><font color="#0000ff"><b>(</b></font><font color="#1f32ff">$text</font><font color="#0000ff"><b>)</b></font>; <font color="#1f32ff">$parser</font>-><font color="#ff8204">debug</font><font color="#0000ff"><b>(</b></font><font color="#007400">"CDATA"</font>,<font color="#007400">"\"$text\""</font><font color="#0000ff"><b>)</b></font>;</pre>}<BR><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0"><TR BGCOLOR="#dcab68"><TD WIDTH="200"><A NAME="CODE9"></A><B>XMLDecl</B></TD><TD>description</TD><TD WIDTH="30"><A HREF="#TOP">top</A></TD><TD WIDTH="30"><A HREF="#CODE8">prev</A></TD><TD WIDTH="30"><A HREF="#CODE10">next</A></TD></TR></TABLE><font color="#0000ff"><b>sub</b></font> <font color="#ff0000"><b>XMLDecl</b></font> {<pre> <font color="#0000ff"><b>my</b></font> <font color="#0000ff"><b>(</b></font><font color="#1f32ff">$parser</font>,<font color="#1f32ff">$expat</font>,<font color="#1f32ff">$version</font>,<font color="#1f32ff">$encoding</font>,<font color="#1f32ff">$standalone</font><font color="#0000ff"><b>)</b></font>=<font color="#1f32ff">@_</font>;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -