1use bitflags::bitflags;
2use std::os::raw::c_uint;
3
4bitflags! {
5 #[derive(PartialEq, Eq, PartialOrd, Ord, Hash, Debug, Clone, Copy)]
7 pub struct RegexOptions: onig_sys::OnigOptionType {
8 const REGEX_OPTION_NONE
10 = onig_sys::ONIG_OPTION_NONE;
11 const REGEX_OPTION_IGNORECASE
13 = onig_sys::ONIG_OPTION_IGNORECASE;
14 const REGEX_OPTION_EXTEND
16 = onig_sys::ONIG_OPTION_EXTEND;
17 const REGEX_OPTION_MULTILINE
19 = onig_sys::ONIG_OPTION_MULTILINE;
20 const REGEX_OPTION_SINGLELINE
22 = onig_sys::ONIG_OPTION_SINGLELINE;
23 const REGEX_OPTION_FIND_LONGEST
25 = onig_sys::ONIG_OPTION_FIND_LONGEST;
26 const REGEX_OPTION_FIND_NOT_EMPTY
28 = onig_sys::ONIG_OPTION_FIND_NOT_EMPTY;
29 const REGEX_OPTION_NEGATE_SINGLELINE
33 = onig_sys::ONIG_OPTION_NEGATE_SINGLELINE;
34 const REGEX_OPTION_DONT_CAPTURE_GROUP
36 = onig_sys::ONIG_OPTION_DONT_CAPTURE_GROUP;
37 const REGEX_OPTION_CAPTURE_GROUP
39 = onig_sys::ONIG_OPTION_CAPTURE_GROUP;
40 }
41}
42
43bitflags! {
44 #[derive(PartialEq, Eq, PartialOrd, Ord, Hash, Debug, Clone, Copy)]
46 pub struct SearchOptions: onig_sys::OnigOptionType {
47 const SEARCH_OPTION_NONE
49 = onig_sys::ONIG_OPTION_NONE;
50 const SEARCH_OPTION_NOTBOL
52 = onig_sys::ONIG_OPTION_NOTBOL;
53 const SEARCH_OPTION_NOTEOL
55 = onig_sys::ONIG_OPTION_NOTEOL;
56 const SEARCH_OPTION_WHOLE_STRING
58 = onig_sys::ONIG_OPTION_MATCH_WHOLE_STRING;
59 const SEARCH_OPTION_NOT_BEGIN_STRING
61 = onig_sys::ONIG_OPTION_NOT_BEGIN_STRING;
62 const SEARCH_OPTION_NOT_BEGIN_POSITION
64 = onig_sys::ONIG_OPTION_NOT_BEGIN_POSITION;
65 }
66}
67
68bitflags! {
69 #[derive(PartialEq, Eq, PartialOrd, Ord, Hash, Debug, Clone, Copy)]
71 pub struct SyntaxOperator: u64 {
72 const SYNTAX_OPERATOR_DOT_ANYCHAR
74 = (onig_sys::ONIG_SYN_OP_DOT_ANYCHAR as u64);
75 const SYNTAX_OPERATOR_ASTERISK_ZERO_INF
77 = (onig_sys::ONIG_SYN_OP_ASTERISK_ZERO_INF as u64);
78 const SYNTAX_OPERATOR_PLUS_ONE_INF
80 = (onig_sys::ONIG_SYN_OP_PLUS_ONE_INF as u64);
81 const SYNTAX_OPERATOR_QMARK_ZERO_ONE
83 = (onig_sys::ONIG_SYN_OP_QMARK_ZERO_ONE as u64);
84 const SYNTAX_OPERATOR_QMARK_CAPITAL_P_NAME
86 = (onig_sys::ONIG_SYN_OP2_QMARK_CAPITAL_P_NAME as u64);
87 const SYNTAX_OPERATOR_BRACE_INTERVAL
89 = (onig_sys::ONIG_SYN_OP_BRACE_INTERVAL as u64);
90 const SYNTAX_OPERATOR_ESC_BRACE_INTERVAL
92 = (onig_sys::ONIG_SYN_OP_ESC_BRACE_INTERVAL as u64);
93 const SYNTAX_OPERATOR_VBAR_ALT
95 = (onig_sys::ONIG_SYN_OP_VBAR_ALT as u64);
96 const SYNTAX_OPERATOR_ESC_VBAR_ALT
98 = (onig_sys::ONIG_SYN_OP_ESC_VBAR_ALT as u64);
99 const SYNTAX_OPERATOR_LPAREN_SUBEXP
101 = (onig_sys::ONIG_SYN_OP_LPAREN_SUBEXP as u64);
102 const SYNTAX_OPERATOR_ESC_LPAREN_SUBEXP
104 = (onig_sys::ONIG_SYN_OP_ESC_LPAREN_SUBEXP as u64);
105 const SYNTAX_OPERATOR_ESC_AZ_BUF_ANCHOR
107 = (onig_sys::ONIG_SYN_OP_ESC_AZ_BUF_ANCHOR as u64);
108 const SYNTAX_OPERATOR_ESC_CAPITAL_G_BEGIN_ANCHOR
110 = (onig_sys::ONIG_SYN_OP_ESC_CAPITAL_G_BEGIN_ANCHOR as u64);
111 const SYNTAX_OPERATOR_DECIMAL_BACKREF
113 = (onig_sys::ONIG_SYN_OP_DECIMAL_BACKREF as u64);
114 const SYNTAX_OPERATOR_BRACKET_CC
116 = (onig_sys::ONIG_SYN_OP_BRACKET_CC as u64);
117 const SYNTAX_OPERATOR_ESC_W_WORD
119 = (onig_sys::ONIG_SYN_OP_ESC_W_WORD as u64);
120 const SYNTAX_OPERATOR_ESC_LTGT_WORD_BEGIN_END
122 = (onig_sys::ONIG_SYN_OP_ESC_LTGT_WORD_BEGIN_END as u64);
123 const SYNTAX_OPERATOR_ESC_B_WORD_BOUND
125 = (onig_sys::ONIG_SYN_OP_ESC_B_WORD_BOUND as u64);
126 const SYNTAX_OPERATOR_ESC_S_WHITE_SPACE
128 = (onig_sys::ONIG_SYN_OP_ESC_S_WHITE_SPACE as u64);
129 const SYNTAX_OPERATOR_ESC_D_DIGIT
131 = (onig_sys::ONIG_SYN_OP_ESC_D_DIGIT as u64);
132 const SYNTAX_OPERATOR_LINE_ANCHOR
134 = (onig_sys::ONIG_SYN_OP_LINE_ANCHOR as u64);
135 const SYNTAX_OPERATOR_POSIX_BRACKET
137 = (onig_sys::ONIG_SYN_OP_POSIX_BRACKET as u64);
138 const SYNTAX_OPERATOR_QMARK_NON_GREEDY
140 = (onig_sys::ONIG_SYN_OP_QMARK_NON_GREEDY as u64);
141 const SYNTAX_OPERATOR_ESC_CONTROL_CHARS
143 = (onig_sys::ONIG_SYN_OP_ESC_CONTROL_CHARS as u64);
144 const SYNTAX_OPERATOR_ESC_C_CONTROL
146 = (onig_sys::ONIG_SYN_OP_ESC_C_CONTROL as u64);
147 const SYNTAX_OPERATOR_ESC_OCTAL3
149 = (onig_sys::ONIG_SYN_OP_ESC_OCTAL3 as u64);
150 const SYNTAX_OPERATOR_ESC_X_HEX2
152 = (onig_sys::ONIG_SYN_OP_ESC_X_HEX2 as u64);
153 const SYNTAX_OPERATOR_ESC_X_BRACE_HEX8
155 = (onig_sys::ONIG_SYN_OP_ESC_X_BRACE_HEX8 as u64);
156 const SYNTAX_OPERATOR_VARIABLE_META_CHARACTERS
158 = (onig_sys::ONIG_SYN_OP_VARIABLE_META_CHARACTERS as u64);
159 const SYNTAX_OPERATOR_ESC_CAPITAL_Q_QUOTE
161 = (onig_sys::ONIG_SYN_OP2_ESC_CAPITAL_Q_QUOTE as u64) << 32;
162 const SYNTAX_OPERATOR_QMARK_GROUP_EFFECT
164 = (onig_sys::ONIG_SYN_OP2_QMARK_GROUP_EFFECT as u64) << 32;
165 const SYNTAX_OPERATOR_OPTION_PERL
167 = (onig_sys::ONIG_SYN_OP2_OPTION_PERL as u64) << 32;
168 const SYNTAX_OPERATOR_OPTION_RUBY
170 = (onig_sys::ONIG_SYN_OP2_OPTION_RUBY as u64) << 32;
171 const SYNTAX_OPERATOR_PLUS_POSSESSIVE_REPEAT
173 = (onig_sys::ONIG_SYN_OP2_PLUS_POSSESSIVE_REPEAT as u64) << 32;
174 const SYNTAX_OPERATOR_PLUS_POSSESSIVE_INTERVAL
176 = (onig_sys::ONIG_SYN_OP2_PLUS_POSSESSIVE_INTERVAL as u64) << 32;
177 const SYNTAX_OPERATOR_CCLASS_SET_OP
179 = (onig_sys::ONIG_SYN_OP2_CCLASS_SET_OP as u64) << 32;
180 const SYNTAX_OPERATOR_QMARK_LT_NAMED_GROUP
182 = (onig_sys::ONIG_SYN_OP2_QMARK_LT_NAMED_GROUP as u64) << 32;
183 const SYNTAX_OPERATOR_ESC_K_NAMED_BACKREF
185 = (onig_sys::ONIG_SYN_OP2_ESC_K_NAMED_BACKREF as u64) << 32;
186 const SYNTAX_OPERATOR_ESC_G_SUBEXP_CALL
188 = (onig_sys::ONIG_SYN_OP2_ESC_G_SUBEXP_CALL as u64) << 32;
189 const SYNTAX_OPERATOR_ATMARK_CAPTURE_HISTORY
191 = (onig_sys::ONIG_SYN_OP2_ATMARK_CAPTURE_HISTORY as u64) << 32;
192 const SYNTAX_OPERATOR_ESC_CAPITAL_C_BAR_CONTROL
194 = (onig_sys::ONIG_SYN_OP2_ESC_CAPITAL_C_BAR_CONTROL as u64) << 32;
195 const SYNTAX_OPERATOR_ESC_CAPITAL_M_BAR_META
197 = (onig_sys::ONIG_SYN_OP2_ESC_CAPITAL_M_BAR_META as u64) << 32;
198 const SYNTAX_OPERATOR_ESC_V_VTAB
200 = (onig_sys::ONIG_SYN_OP2_ESC_V_VTAB as u64) << 32;
201 const SYNTAX_OPERATOR_ESC_U_HEX4
203 = (onig_sys::ONIG_SYN_OP2_ESC_U_HEX4 as u64) << 32;
204 const SYNTAX_OPERATOR_ESC_GNU_BUF_ANCHOR
206 = (onig_sys::ONIG_SYN_OP2_ESC_GNU_BUF_ANCHOR as u64) << 32;
207 const SYNTAX_OPERATOR_ESC_P_BRACE_CHAR_PROPERTY
209 = (onig_sys::ONIG_SYN_OP2_ESC_P_BRACE_CHAR_PROPERTY as u64) << 32;
210 const SYNTAX_OPERATOR_ESC_P_BRACE_CIRCUMFLEX_NOT
212 = (onig_sys::ONIG_SYN_OP2_ESC_P_BRACE_CIRCUMFLEX_NOT as u64) << 32;
213 const SYNTAX_OPERATOR_ESC_H_XDIGIT
215 = (onig_sys::ONIG_SYN_OP2_ESC_H_XDIGIT as u64) << 32;
216 const SYNTAX_OPERATOR_INEFFECTIVE_ESCAPE
218 = (onig_sys::ONIG_SYN_OP2_INEFFECTIVE_ESCAPE as u64) << 32;
219 }
220}
221
222bitflags! {
223 #[derive(PartialEq, Eq, PartialOrd, Ord, Hash, Debug, Clone, Copy)]
225 pub struct SyntaxBehavior: onig_sys::OnigSyntaxBehavior {
226 const SYNTAX_BEHAVIOR_CONTEXT_INDEP_REPEAT_OPS
228 = onig_sys::ONIG_SYN_CONTEXT_INDEP_REPEAT_OPS;
229 const SYNTAX_BEHAVIOR_CONTEXT_INVALID_REPEAT_OPS
231 = onig_sys::ONIG_SYN_CONTEXT_INVALID_REPEAT_OPS;
232 const SYNTAX_BEHAVIOR_ALLOW_UNMATCHED_CLOSE_SUBEXP
234 = onig_sys::ONIG_SYN_ALLOW_UNMATCHED_CLOSE_SUBEXP;
235 const SYNTAX_BEHAVIOR_ALLOW_INVALID_INTERVAL
237 = onig_sys::ONIG_SYN_ALLOW_INVALID_INTERVAL;
238 const SYNTAX_BEHAVIOR_ALLOW_INTERVAL_LOW_ABBREV
240 = onig_sys::ONIG_SYN_ALLOW_INTERVAL_LOW_ABBREV;
241 const SYNTAX_BEHAVIOR_STRICT_CHECK_BACKREF
243 = onig_sys::ONIG_SYN_STRICT_CHECK_BACKREF;
244 const SYNTAX_BEHAVIOR_DIFFERENT_LEN_ALT_LOOK_BEHIND
246 = onig_sys::ONIG_SYN_DIFFERENT_LEN_ALT_LOOK_BEHIND;
247 const SYNTAX_BEHAVIOR_CAPTURE_ONLY_NAMED_GROUP
249 = onig_sys::ONIG_SYN_CAPTURE_ONLY_NAMED_GROUP;
250 const SYNTAX_BEHAVIOR_ALLOW_MULTIPLEX_DEFINITION_NAME
252 = onig_sys::ONIG_SYN_ALLOW_MULTIPLEX_DEFINITION_NAME;
253 const SYNTAX_BEHAVIOR_FIXED_INTERVAL_IS_GREEDY_ONLY
255 = onig_sys::ONIG_SYN_FIXED_INTERVAL_IS_GREEDY_ONLY;
256 const SYNTAX_BEHAVIOR_NOT_NEWLINE_IN_NEGATIVE_CC
258 = onig_sys::ONIG_SYN_NOT_NEWLINE_IN_NEGATIVE_CC;
259 const SYNTAX_BEHAVIOR_BACKSLASH_ESCAPE_IN_CC
261 = onig_sys::ONIG_SYN_BACKSLASH_ESCAPE_IN_CC;
262 const SYNTAX_BEHAVIOR_ALLOW_DOUBLE_RANGE_OP_IN_CC
264 = onig_sys::ONIG_SYN_ALLOW_DOUBLE_RANGE_OP_IN_CC;
265 const SYNTAX_BEHAVIOR_WARN_CC_OP_NOT_ESCAPED
267 = onig_sys::ONIG_SYN_WARN_CC_OP_NOT_ESCAPED;
268 const SYNTAX_BEHAVIOR_WARN_REDUNDANT_NESTED_REPEAT
270 = onig_sys::ONIG_SYN_WARN_REDUNDANT_NESTED_REPEAT;
271 }
272}
273
274bitflags! {
275 #[derive(PartialEq, Eq, PartialOrd, Ord, Hash, Debug, Clone, Copy)]
277 pub struct TraverseCallbackAt: c_uint {
278 const CALLBACK_AT_FIRST =
280 onig_sys::ONIG_TRAVERSE_CALLBACK_AT_FIRST;
281 const CALLBACK_AT_LAST =
283 onig_sys::ONIG_TRAVERSE_CALLBACK_AT_LAST;
284 const CALLBACK_AT_BOTH =
286 onig_sys::ONIG_TRAVERSE_CALLBACK_AT_BOTH;
287 }
288}
289
290bitflags! {
291 #[derive(PartialEq, Eq, PartialOrd, Ord, Hash, Debug, Clone, Copy)]
293 pub struct MetaCharType: c_uint {
294 const META_CHAR_ESCAPE = onig_sys::ONIG_META_CHAR_ESCAPE;
296 const META_CHAR_ANYCHAR = onig_sys::ONIG_META_CHAR_ANYCHAR;
298 const META_CHAR_ANYTIME = onig_sys::ONIG_META_CHAR_ANYTIME;
300 const META_CHAR_ZERO_OR_ONE_TIME = onig_sys::ONIG_META_CHAR_ZERO_OR_ONE_TIME;
302 const META_CHAR_ONE_OR_MORE_TIME = onig_sys::ONIG_META_CHAR_ONE_OR_MORE_TIME;
304 const META_CHAR_ANYCHAR_ANYTIME = onig_sys::ONIG_META_CHAR_ANYCHAR_ANYTIME;
306 }
307}