| 1 |
wakaba |
1.1 |
<!DOCTYPE HTML> |
| 2 |
|
|
<html lang=en> |
| 3 |
|
|
<head> |
| 4 |
|
|
<title>Whatpm's Selectors Object</title> |
| 5 |
|
|
<link rel=stylesheet href="http://suika.fam.cx/www/style/html/xhtml"> |
| 6 |
|
|
<link rel=author title=Wakaba href="http://suika.fam.cx/~wakaba/who?" lang=ja> |
| 7 |
|
|
<link rel=license href="#license"> |
| 8 |
|
|
<style> |
| 9 |
|
|
p.synopsis { |
| 10 |
|
|
margin-left: 4em; |
| 11 |
|
|
margin-right: 2em; |
| 12 |
|
|
margin-top: 1em; |
| 13 |
|
|
margin-bottom: 1em; |
| 14 |
|
|
padding-left: 3em; |
| 15 |
|
|
padding-right: 1em; |
| 16 |
|
|
text-indent: -2em; |
| 17 |
|
|
background-color: #ffeeff; |
| 18 |
|
|
color: black; |
| 19 |
|
|
text-align: left; |
| 20 |
|
|
} |
| 21 |
|
|
.synopsis > code { |
| 22 |
|
|
color: inherit; |
| 23 |
|
|
} |
| 24 |
|
|
</style> |
| 25 |
|
|
</head> |
| 26 |
|
|
<body> |
| 27 |
|
|
<h1>Selectors Object</h1> |
| 28 |
|
|
|
| 29 |
|
|
<div class=section id=structure> |
| 30 |
|
|
<h2>Structure of Selectors Object</h2> |
| 31 |
|
|
|
| 32 |
|
|
<p>A <dfn id=group-of-selectors-object>group of selectors object</dfn> is |
| 33 |
|
|
represented as a reference to a Perl array, which contains zero or more |
| 34 |
|
|
<a href="#selector-object">selector object</a>.</p> |
| 35 |
|
|
|
| 36 |
|
|
<p class=synopsis><code>$group_of_selectors = [$selector1, $selector2, |
| 37 |
|
|
<var>...</var>, $selectors<var>n</var>];</code></p> |
| 38 |
|
|
|
| 39 |
|
|
<p>A <dfn id=selector-object>selector object</dfn> is represented as a |
| 40 |
|
|
reference to a Perl array, which contains zero or more sequence of a |
| 41 |
|
|
<a href="#combinator-value">combinator value</a> followed by a |
| 42 |
|
|
<a href="#sss-object">sequence of simple selectors object</a>. |
| 43 |
|
|
The first <a href="#combinator-value">combinator value</a>, if any, is always |
| 44 |
|
|
(and <em class=rfc2119>MUST</em> be) |
| 45 |
|
|
<a href="SelectorsParser.html#item_descendant_combinator"><code>DESCENDANT_COMBINATOR</code></a>.</p> |
| 46 |
|
|
|
| 47 |
|
|
<p class=synopsis><code>$selector = [$combinator1, $sss1, |
| 48 |
|
|
$combinator2, $sss2, <var>...</var>, |
| 49 |
|
|
$combinator<var>n</var>, $sss<var>n</var>];</code></p> |
| 50 |
|
|
|
| 51 |
|
|
<p>A <dfn id=combinator-value>combinator value</dfn> is one of |
| 52 |
|
|
<a href="SelectorsParser.html#combinator_types">combinator types</a>.</p> |
| 53 |
|
|
|
| 54 |
|
|
<p>A <dfn id=sss-object>sequence of simple selectors pbject</dfn> is |
| 55 |
|
|
represented as a reference to a Perl array, which contains zero or |
| 56 |
|
|
more <a href="#simple-selector-object">simple selector object</a>.</p> |
| 57 |
|
|
|
| 58 |
|
|
<p class=synopsis><code>$sss = [$ss1, $ss2, <var>...</var>, |
| 59 |
|
|
$ss<var>n</var>];</code></p> |
| 60 |
|
|
|
| 61 |
|
|
<p>A <dfn id=simple-selector-object>simple selector object</dfn> is one of |
| 62 |
|
|
following objects:</p> |
| 63 |
|
|
<dl> |
| 64 |
|
|
<dt><dfn id=namespace-selector-object>Namespace selector object</dfn></dt> |
| 65 |
|
|
<dd> |
| 66 |
|
|
<p>Represented as a reference to a Perl array, which contains a value of |
| 67 |
|
|
<a href="SelectorsParser.html#item_namespace_selector"><code>NAMESPACE_SELECTOR</code></a>, |
| 68 |
|
|
followed by a scalar value. The scalar value is either |
| 69 |
|
|
<code>undef</code>, which represents the null namespace (encoded as an |
| 70 |
wakaba |
1.2 |
empty namespace prefix in Selectors), or a non$B!>(Bempty string, which |
| 71 |
|
|
represents the namespace URI of an element.</p> |
| 72 |
wakaba |
1.1 |
|
| 73 |
|
|
<p class=synopsis><code>$selector = [NAMESPACE_SELECTOR, undef]; <code class=comment>## null namespace</code></code></p> |
| 74 |
|
|
<p class=synopsis><code>$selector = [NAMESPACE_SELECTOR, $nsuri]; <code class=comment>## non-null namespace</code></code></p> |
| 75 |
|
|
</dd> |
| 76 |
|
|
</dl> |
| 77 |
|
|
|
| 78 |
|
|
<p class=ed>@@ |
| 79 |
|
|
</div> |
| 80 |
|
|
|
| 81 |
|
|
<div class=section id=error> |
| 82 |
|
|
<h2>Error Handling Rule</h2> |
| 83 |
|
|
|
| 84 |
|
|
<p class=ed>@@ |
| 85 |
|
|
</div> |
| 86 |
|
|
|
| 87 |
|
|
<div class=section id=see-also> |
| 88 |
|
|
<h2>See Also</h2> |
| 89 |
|
|
|
| 90 |
|
|
<ul> |
| 91 |
|
|
<li><a href="SelectorsParser.html"><code>Whatpm::CSS::SelectorsParser</code> |
| 92 |
|
|
documentation</a></li> |
| 93 |
|
|
</ul> |
| 94 |
|
|
</div> |
| 95 |
|
|
|
| 96 |
|
|
<div class=section id=author> |
| 97 |
|
|
<h2>Author</h2> |
| 98 |
|
|
|
| 99 |
|
|
<p><a href="http://suika.fam.cx/~wakaba/who?" rel=author>Wakaba</a>.</p> |
| 100 |
|
|
</div> |
| 101 |
|
|
|
| 102 |
|
|
<div class=section id=license> |
| 103 |
|
|
<h2>License</h2> |
| 104 |
|
|
|
| 105 |
|
|
<p>Copyright <time>2007</time> |
| 106 |
|
|
<a href="http://suika.fam.cx/~wakaba/who?" rel=author lang=ja>Wakaba</a> |
| 107 |
|
|
<code class=mail><<a href="mailto:w@suika.fam.cx">w@suika.fam.cx</a>></code></p> |
| 108 |
|
|
|
| 109 |
|
|
<p>This library is free software; you can redistribute it |
| 110 |
|
|
and/or modify it under the same terms as Perl itself.</p> |
| 111 |
|
|
</div> |
| 112 |
|
|
|
| 113 |
|
|
</body> |
| 114 |
|
|
</html> |