line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
################################################################################################### |
2
|
|
|
|
|
|
|
# Copyright 2013/2014 by Marcel Greter |
3
|
|
|
|
|
|
|
# This file is part of OCBNET-CSS3 (GPL3) |
4
|
|
|
|
|
|
|
#################################################################################################### |
5
|
|
|
|
|
|
|
package OCBNET::CSS3::DOM::Selector; |
6
|
|
|
|
|
|
|
#################################################################################################### |
7
|
|
|
|
|
|
|
our $VERSION = '0.2.5'; |
8
|
|
|
|
|
|
|
#################################################################################################### |
9
|
|
|
|
|
|
|
|
10
|
11
|
|
|
11
|
|
58
|
use strict; |
|
11
|
|
|
|
|
19
|
|
|
11
|
|
|
|
|
344
|
|
11
|
11
|
|
|
11
|
|
53
|
use warnings; |
|
11
|
|
|
|
|
24
|
|
|
11
|
|
|
|
|
282
|
|
12
|
|
|
|
|
|
|
|
13
|
|
|
|
|
|
|
#################################################################################################### |
14
|
11
|
|
|
11
|
|
52
|
use base 'OCBNET::CSS3::DOM::Block'; |
|
11
|
|
|
|
|
20
|
|
|
11
|
|
|
|
|
1123
|
|
15
|
|
|
|
|
|
|
#################################################################################################### |
16
|
|
|
|
|
|
|
|
17
|
|
|
|
|
|
|
# static getter |
18
|
|
|
|
|
|
|
#************************************************************************************************** |
19
|
1
|
|
|
1
|
0
|
6
|
sub type { return 'selector' } |
20
|
|
|
|
|
|
|
|
21
|
|
|
|
|
|
|
#################################################################################################### |
22
|
|
|
|
|
|
|
|
23
|
|
|
|
|
|
|
# load regex for vendor prefixes |
24
|
|
|
|
|
|
|
#************************************************************************************************** |
25
|
11
|
|
|
11
|
|
7184
|
use OCBNET::CSS3::Regex::Selectors qw($re_selector_rules); |
|
11
|
|
|
|
|
29
|
|
|
11
|
|
|
|
|
2022
|
|
26
|
|
|
|
|
|
|
|
27
|
|
|
|
|
|
|
# add basic extended type with highest priority |
28
|
|
|
|
|
|
|
#************************************************************************************************** |
29
|
|
|
|
|
|
|
unshift @OCBNET::CSS3::types, [ |
30
|
|
|
|
|
|
|
qr/\A\s*$re_selector_rules/is, |
31
|
|
|
|
|
|
|
'OCBNET::CSS3::DOM::Selector', |
32
|
|
|
|
|
|
|
sub { !! $_[1] } |
33
|
|
|
|
|
|
|
]; |
34
|
|
|
|
|
|
|
|
35
|
|
|
|
|
|
|
#################################################################################################### |
36
|
|
|
|
|
|
|
#################################################################################################### |
37
|
|
|
|
|
|
|
1; |