1#ifndef SASS_CONSTANTS_H
2#define SASS_CONSTANTS_H
3
4namespace Sass {
5 namespace Constants {
6
7 // The maximum call stack that can be created
8 extern const unsigned long MaxCallStack;
9
10 // https://developer.mozilla.org/en-US/docs/Web/CSS/Specificity
11 // The following list of selectors is by increasing specificity:
12 extern const unsigned long Specificity_Star;
13 extern const unsigned long Specificity_Universal;
14 extern const unsigned long Specificity_Element;
15 extern const unsigned long Specificity_Base;
16 extern const unsigned long Specificity_Class;
17 extern const unsigned long Specificity_Attr;
18 extern const unsigned long Specificity_Pseudo;
19 extern const unsigned long Specificity_ID;
20
21 // Selector unification order;
22 extern const int UnificationOrder_Element;
23 extern const int UnificationOrder_Id;
24 extern const int UnificationOrder_Class;
25 extern const int UnificationOrder_Attribute;
26 extern const int UnificationOrder_PseudoClass;
27 extern const int UnificationOrder_Wrapped;
28 extern const int UnificationOrder_PseudoElement;
29 extern const int UnificationOrder_Placeholder;
30
31 // sass keywords
32 extern const char at_root_kwd[];
33 extern const char import_kwd[];
34 extern const char mixin_kwd[];
35 extern const char function_kwd[];
36 extern const char return_kwd[];
37 extern const char include_kwd[];
38 extern const char content_kwd[];
39 extern const char extend_kwd[];
40 extern const char if_kwd[];
41 extern const char else_kwd[];
42 extern const char if_after_else_kwd[];
43 extern const char for_kwd[];
44 extern const char from_kwd[];
45 extern const char to_kwd[];
46 extern const char of_kwd[];
47 extern const char through_kwd[];
48 extern const char each_kwd[];
49 extern const char in_kwd[];
50 extern const char while_kwd[];
51 extern const char warn_kwd[];
52 extern const char error_kwd[];
53 extern const char debug_kwd[];
54 extern const char default_kwd[];
55 extern const char global_kwd[];
56 extern const char null_kwd[];
57 extern const char optional_kwd[];
58 extern const char with_kwd[];
59 extern const char without_kwd[];
60 extern const char all_kwd[];
61 extern const char rule_kwd[];
62
63 // css standard units
64 extern const char em_kwd[];
65 extern const char ex_kwd[];
66 extern const char px_kwd[];
67 extern const char cm_kwd[];
68 extern const char mm_kwd[];
69 extern const char pt_kwd[];
70 extern const char pc_kwd[];
71 extern const char deg_kwd[];
72 extern const char rad_kwd[];
73 extern const char grad_kwd[];
74 extern const char turn_kwd[];
75 extern const char ms_kwd[];
76 extern const char s_kwd[];
77 extern const char Hz_kwd[];
78 extern const char kHz_kwd[];
79
80 // vendor prefixes
81 extern const char vendor_opera_kwd[];
82 extern const char vendor_webkit_kwd[];
83 extern const char vendor_mozilla_kwd[];
84 extern const char vendor_ms_kwd[];
85 extern const char vendor_khtml_kwd[];
86
87 // css functions and keywords
88 extern const char charset_kwd[];
89 extern const char media_kwd[];
90 extern const char supports_kwd[];
91 extern const char keyframes_kwd[];
92 extern const char only_kwd[];
93 extern const char rgb_fn_kwd[];
94 extern const char url_fn_kwd[];
95 extern const char url_kwd[];
96 // extern const char url_prefix_fn_kwd[];
97 extern const char important_kwd[];
98 extern const char pseudo_not_fn_kwd[];
99 extern const char even_kwd[];
100 extern const char odd_kwd[];
101 extern const char progid_kwd[];
102 extern const char expression_kwd[];
103 extern const char calc_fn_kwd[];
104
105 // char classes for "regular expressions"
106 extern const char almost_any_value_class[];
107
108 // css selector keywords
109 extern const char sel_deep_kwd[];
110
111 // css attribute-matching operators
112 extern const char tilde_equal[];
113 extern const char pipe_equal[];
114 extern const char caret_equal[];
115 extern const char dollar_equal[];
116 extern const char star_equal[];
117
118 // relational & logical operators and constants
119 extern const char and_kwd[];
120 extern const char or_kwd[];
121 extern const char not_kwd[];
122 extern const char gt[];
123 extern const char gte[];
124 extern const char lt[];
125 extern const char lte[];
126 extern const char eq[];
127 extern const char neq[];
128 extern const char true_kwd[];
129 extern const char false_kwd[];
130
131 // definition keywords
132 extern const char using_kwd[];
133
134 // miscellaneous punctuation and delimiters
135 extern const char percent_str[];
136 extern const char empty_str[];
137 extern const char slash_slash[];
138 extern const char slash_star[];
139 extern const char star_slash[];
140 extern const char hash_lbrace[];
141 extern const char rbrace[];
142 extern const char rparen[];
143 extern const char sign_chars[];
144 extern const char op_chars[];
145 extern const char hyphen[];
146 extern const char ellipsis[];
147 // extern const char url_space_chars[];
148
149 // type names
150 extern const char numeric_name[];
151 extern const char number_name[];
152 extern const char percentage_name[];
153 extern const char dimension_name[];
154 extern const char string_name[];
155 extern const char bool_name[];
156 extern const char color_name[];
157 extern const char list_name[];
158 extern const char map_name[];
159 extern const char arglist_name[];
160
161 // constants for uri parsing (RFC 3986 Appendix A.)
162 extern const char uri_chars[];
163 extern const char real_uri_chars[];
164
165 // constants for selector combinators
166 extern const char selector_combinator_child[];
167 extern const char selector_combinator_general[];
168 extern const char selector_combinator_adjacent[];
169
170 // some specific constant character classes
171 // they must be static to be useable by lexer
172 extern const char static_ops[];
173 extern const char selector_list_delims[];
174 extern const char complex_selector_delims[];
175 extern const char selector_combinator_ops[];
176 extern const char attribute_compare_modifiers[];
177 extern const char selector_lookahead_ops[];
178
179 // byte order marks
180 // (taken from http://en.wikipedia.org/wiki/Byte_order_mark)
181 extern const unsigned char utf_8_bom[];
182 extern const unsigned char utf_16_bom_be[];
183 extern const unsigned char utf_16_bom_le[];
184 extern const unsigned char utf_32_bom_be[];
185 extern const unsigned char utf_32_bom_le[];
186 extern const unsigned char utf_7_bom_1[];
187 extern const unsigned char utf_7_bom_2[];
188 extern const unsigned char utf_7_bom_3[];
189 extern const unsigned char utf_7_bom_4[];
190 extern const unsigned char utf_7_bom_5[];
191 extern const unsigned char utf_1_bom[];
192 extern const unsigned char utf_ebcdic_bom[];
193 extern const unsigned char scsu_bom[];
194 extern const unsigned char bocu_1_bom[];
195 extern const unsigned char gb_18030_bom[];
196
197 }
198}
199
200#endif
201

source code of gtk/subprojects/libsass/src/constants.hpp