]>
Commit | Line | Data |
---|---|---|
14b0e578 CS |
1 | /**********************************************************************\r |
2 | regsyntax.c - Oniguruma (regular expression library)\r | |
3 | **********************************************************************/\r | |
4 | /*-\r | |
b26691c4 | 5 | * Copyright (c) 2002-2019 K.Kosako <sndgk393 AT ybb DOT ne DOT jp>\r |
14b0e578 CS |
6 | * All rights reserved.\r |
7 | *\r | |
8 | * Redistribution and use in source and binary forms, with or without\r | |
9 | * modification, are permitted provided that the following conditions\r | |
10 | * are met:\r | |
11 | * 1. Redistributions of source code must retain the above copyright\r | |
12 | * notice, this list of conditions and the following disclaimer.\r | |
13 | * 2. Redistributions in binary form must reproduce the above copyright\r | |
14 | * notice, this list of conditions and the following disclaimer in the\r | |
15 | * documentation and/or other materials provided with the distribution.\r | |
16 | *\r | |
17 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND\r | |
18 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\r | |
19 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r | |
20 | * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE\r | |
21 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\r | |
22 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS\r | |
23 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)\r | |
24 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT\r | |
25 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY\r | |
26 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF\r | |
27 | * SUCH DAMAGE.\r | |
28 | */\r | |
29 | \r | |
30 | #include "regint.h"\r | |
31 | \r | |
32 | OnigSyntaxType OnigSyntaxASIS = {\r | |
33 | 0\r | |
34 | , ONIG_SYN_OP2_INEFFECTIVE_ESCAPE\r | |
35 | , 0\r | |
36 | , ONIG_OPTION_NONE\r | |
37 | ,\r | |
38 | {\r | |
39 | (OnigCodePoint )'\\' /* esc */\r | |
40 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar '.' */\r | |
41 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anytime '*' */\r | |
42 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* zero or one time '?' */\r | |
43 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* one or more time '+' */\r | |
44 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar anytime */\r | |
45 | }\r | |
46 | };\r | |
47 | \r | |
48 | OnigSyntaxType OnigSyntaxPosixBasic = {\r | |
49 | ( SYN_POSIX_COMMON_OP | ONIG_SYN_OP_ESC_LPAREN_SUBEXP |\r | |
50 | ONIG_SYN_OP_ESC_BRACE_INTERVAL )\r | |
51 | , 0\r | |
52 | , 0\r | |
53 | , ( ONIG_OPTION_SINGLELINE | ONIG_OPTION_MULTILINE )\r | |
54 | ,\r | |
55 | {\r | |
56 | (OnigCodePoint )'\\' /* esc */\r | |
57 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar '.' */\r | |
58 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anytime '*' */\r | |
59 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* zero or one time '?' */\r | |
60 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* one or more time '+' */\r | |
61 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar anytime */\r | |
62 | }\r | |
63 | };\r | |
64 | \r | |
65 | OnigSyntaxType OnigSyntaxPosixExtended = {\r | |
66 | ( SYN_POSIX_COMMON_OP | ONIG_SYN_OP_LPAREN_SUBEXP |\r | |
67 | ONIG_SYN_OP_BRACE_INTERVAL |\r | |
68 | ONIG_SYN_OP_PLUS_ONE_INF | ONIG_SYN_OP_QMARK_ZERO_ONE | ONIG_SYN_OP_VBAR_ALT )\r | |
69 | , 0\r | |
b26691c4 LG |
70 | , ( ONIG_SYN_CONTEXT_INDEP_ANCHORS |\r |
71 | ONIG_SYN_CONTEXT_INDEP_REPEAT_OPS | ONIG_SYN_CONTEXT_INVALID_REPEAT_OPS |\r | |
14b0e578 CS |
72 | ONIG_SYN_ALLOW_UNMATCHED_CLOSE_SUBEXP |\r |
73 | ONIG_SYN_ALLOW_DOUBLE_RANGE_OP_IN_CC )\r | |
74 | , ( ONIG_OPTION_SINGLELINE | ONIG_OPTION_MULTILINE )\r | |
75 | ,\r | |
76 | {\r | |
77 | (OnigCodePoint )'\\' /* esc */\r | |
78 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar '.' */\r | |
79 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anytime '*' */\r | |
80 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* zero or one time '?' */\r | |
81 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* one or more time '+' */\r | |
82 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar anytime */\r | |
83 | }\r | |
84 | };\r | |
85 | \r | |
86 | OnigSyntaxType OnigSyntaxEmacs = {\r | |
87 | ( ONIG_SYN_OP_DOT_ANYCHAR | ONIG_SYN_OP_BRACKET_CC |\r | |
88 | ONIG_SYN_OP_ESC_BRACE_INTERVAL |\r | |
89 | ONIG_SYN_OP_ESC_LPAREN_SUBEXP | ONIG_SYN_OP_ESC_VBAR_ALT |\r | |
90 | ONIG_SYN_OP_ASTERISK_ZERO_INF | ONIG_SYN_OP_PLUS_ONE_INF |\r | |
91 | ONIG_SYN_OP_QMARK_ZERO_ONE | ONIG_SYN_OP_DECIMAL_BACKREF |\r | |
92 | ONIG_SYN_OP_LINE_ANCHOR | ONIG_SYN_OP_ESC_CONTROL_CHARS )\r | |
93 | , ONIG_SYN_OP2_ESC_GNU_BUF_ANCHOR\r | |
94 | , ONIG_SYN_ALLOW_EMPTY_RANGE_IN_CC\r | |
95 | , ONIG_OPTION_NONE\r | |
96 | ,\r | |
97 | {\r | |
98 | (OnigCodePoint )'\\' /* esc */\r | |
99 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar '.' */\r | |
100 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anytime '*' */\r | |
101 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* zero or one time '?' */\r | |
102 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* one or more time '+' */\r | |
103 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar anytime */\r | |
104 | }\r | |
105 | };\r | |
106 | \r | |
107 | OnigSyntaxType OnigSyntaxGrep = {\r | |
108 | ( ONIG_SYN_OP_DOT_ANYCHAR | ONIG_SYN_OP_BRACKET_CC | ONIG_SYN_OP_POSIX_BRACKET |\r | |
109 | ONIG_SYN_OP_ESC_BRACE_INTERVAL | ONIG_SYN_OP_ESC_LPAREN_SUBEXP |\r | |
110 | ONIG_SYN_OP_ESC_VBAR_ALT |\r | |
111 | ONIG_SYN_OP_ASTERISK_ZERO_INF | ONIG_SYN_OP_ESC_PLUS_ONE_INF |\r | |
112 | ONIG_SYN_OP_ESC_QMARK_ZERO_ONE | ONIG_SYN_OP_LINE_ANCHOR |\r | |
113 | ONIG_SYN_OP_ESC_W_WORD | ONIG_SYN_OP_ESC_B_WORD_BOUND |\r | |
114 | ONIG_SYN_OP_ESC_LTGT_WORD_BEGIN_END | ONIG_SYN_OP_DECIMAL_BACKREF )\r | |
115 | , 0\r | |
116 | , ( ONIG_SYN_ALLOW_EMPTY_RANGE_IN_CC | ONIG_SYN_NOT_NEWLINE_IN_NEGATIVE_CC )\r | |
117 | , ONIG_OPTION_NONE\r | |
118 | ,\r | |
119 | {\r | |
120 | (OnigCodePoint )'\\' /* esc */\r | |
121 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar '.' */\r | |
122 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anytime '*' */\r | |
123 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* zero or one time '?' */\r | |
124 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* one or more time '+' */\r | |
125 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar anytime */\r | |
126 | }\r | |
127 | };\r | |
128 | \r | |
129 | OnigSyntaxType OnigSyntaxGnuRegex = {\r | |
130 | SYN_GNU_REGEX_OP\r | |
131 | , 0\r | |
132 | , SYN_GNU_REGEX_BV\r | |
133 | , ONIG_OPTION_NONE\r | |
134 | ,\r | |
135 | {\r | |
136 | (OnigCodePoint )'\\' /* esc */\r | |
137 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar '.' */\r | |
138 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anytime '*' */\r | |
139 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* zero or one time '?' */\r | |
140 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* one or more time '+' */\r | |
141 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar anytime */\r | |
142 | }\r | |
143 | };\r | |
144 | \r | |
145 | OnigSyntaxType OnigSyntaxJava = {\r | |
146 | (( SYN_GNU_REGEX_OP | ONIG_SYN_OP_QMARK_NON_GREEDY |\r | |
147 | ONIG_SYN_OP_ESC_CONTROL_CHARS | ONIG_SYN_OP_ESC_C_CONTROL |\r | |
148 | ONIG_SYN_OP_ESC_OCTAL3 | ONIG_SYN_OP_ESC_X_HEX2 )\r | |
149 | & ~ONIG_SYN_OP_ESC_LTGT_WORD_BEGIN_END )\r | |
150 | , ( ONIG_SYN_OP2_ESC_CAPITAL_Q_QUOTE | ONIG_SYN_OP2_QMARK_GROUP_EFFECT |\r | |
151 | ONIG_SYN_OP2_OPTION_PERL | ONIG_SYN_OP2_PLUS_POSSESSIVE_REPEAT |\r | |
152 | ONIG_SYN_OP2_PLUS_POSSESSIVE_INTERVAL | ONIG_SYN_OP2_CCLASS_SET_OP |\r | |
153 | ONIG_SYN_OP2_ESC_V_VTAB | ONIG_SYN_OP2_ESC_U_HEX4 |\r | |
154 | ONIG_SYN_OP2_ESC_P_BRACE_CHAR_PROPERTY )\r | |
155 | , ( SYN_GNU_REGEX_BV | ONIG_SYN_DIFFERENT_LEN_ALT_LOOK_BEHIND )\r | |
156 | , ONIG_OPTION_SINGLELINE\r | |
157 | ,\r | |
158 | {\r | |
159 | (OnigCodePoint )'\\' /* esc */\r | |
160 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar '.' */\r | |
161 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anytime '*' */\r | |
162 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* zero or one time '?' */\r | |
163 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* one or more time '+' */\r | |
164 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar anytime */\r | |
165 | }\r | |
166 | };\r | |
167 | \r | |
168 | OnigSyntaxType OnigSyntaxPerl = {\r | |
169 | (( SYN_GNU_REGEX_OP | ONIG_SYN_OP_QMARK_NON_GREEDY |\r | |
170 | ONIG_SYN_OP_ESC_OCTAL3 | ONIG_SYN_OP_ESC_X_HEX2 |\r | |
b602265d DG |
171 | ONIG_SYN_OP_ESC_X_BRACE_HEX8 | ONIG_SYN_OP_ESC_O_BRACE_OCTAL |\r |
172 | ONIG_SYN_OP_ESC_CONTROL_CHARS |\r | |
14b0e578 CS |
173 | ONIG_SYN_OP_ESC_C_CONTROL )\r |
174 | & ~ONIG_SYN_OP_ESC_LTGT_WORD_BEGIN_END )\r | |
175 | , ( ONIG_SYN_OP2_ESC_CAPITAL_Q_QUOTE |\r | |
176 | ONIG_SYN_OP2_QMARK_GROUP_EFFECT | ONIG_SYN_OP2_OPTION_PERL |\r | |
b26691c4 | 177 | ONIG_SYN_OP2_PLUS_POSSESSIVE_REPEAT | ONIG_SYN_OP2_PLUS_POSSESSIVE_INTERVAL |\r |
b602265d DG |
178 | ONIG_SYN_OP2_QMARK_LPAREN_IF_ELSE |\r |
179 | ONIG_SYN_OP2_QMARK_TILDE_ABSENT_GROUP |\r | |
180 | ONIG_SYN_OP2_QMARK_BRACE_CALLOUT_CONTENTS |\r | |
181 | ONIG_SYN_OP2_ASTERISK_CALLOUT_NAME |\r | |
b26691c4 | 182 | ONIG_SYN_OP2_ESC_X_Y_TEXT_SEGMENT |\r |
14b0e578 | 183 | ONIG_SYN_OP2_ESC_P_BRACE_CHAR_PROPERTY |\r |
b602265d DG |
184 | ONIG_SYN_OP2_ESC_P_BRACE_CIRCUMFLEX_NOT |\r |
185 | ONIG_SYN_OP2_ESC_CAPITAL_K_KEEP |\r | |
186 | ONIG_SYN_OP2_ESC_CAPITAL_R_GENERAL_NEWLINE |\r | |
187 | ONIG_SYN_OP2_ESC_CAPITAL_N_O_SUPER_DOT )\r | |
14b0e578 CS |
188 | , SYN_GNU_REGEX_BV\r |
189 | , ONIG_OPTION_SINGLELINE\r | |
190 | ,\r | |
191 | {\r | |
192 | (OnigCodePoint )'\\' /* esc */\r | |
193 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar '.' */\r | |
194 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anytime '*' */\r | |
195 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* zero or one time '?' */\r | |
196 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* one or more time '+' */\r | |
197 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar anytime */\r | |
198 | }\r | |
199 | };\r | |
200 | \r | |
201 | /* Perl + named group */\r | |
202 | OnigSyntaxType OnigSyntaxPerl_NG = {\r | |
203 | (( SYN_GNU_REGEX_OP | ONIG_SYN_OP_QMARK_NON_GREEDY |\r | |
204 | ONIG_SYN_OP_ESC_OCTAL3 | ONIG_SYN_OP_ESC_X_HEX2 |\r | |
b602265d DG |
205 | ONIG_SYN_OP_ESC_X_BRACE_HEX8 | ONIG_SYN_OP_ESC_O_BRACE_OCTAL |\r |
206 | ONIG_SYN_OP_ESC_CONTROL_CHARS |\r | |
14b0e578 CS |
207 | ONIG_SYN_OP_ESC_C_CONTROL )\r |
208 | & ~ONIG_SYN_OP_ESC_LTGT_WORD_BEGIN_END )\r | |
209 | , ( ONIG_SYN_OP2_ESC_CAPITAL_Q_QUOTE |\r | |
210 | ONIG_SYN_OP2_QMARK_GROUP_EFFECT | ONIG_SYN_OP2_OPTION_PERL |\r | |
b26691c4 | 211 | ONIG_SYN_OP2_PLUS_POSSESSIVE_REPEAT | ONIG_SYN_OP2_PLUS_POSSESSIVE_INTERVAL |\r |
b602265d DG |
212 | ONIG_SYN_OP2_QMARK_LPAREN_IF_ELSE |\r |
213 | ONIG_SYN_OP2_QMARK_TILDE_ABSENT_GROUP |\r | |
214 | ONIG_SYN_OP2_QMARK_BRACE_CALLOUT_CONTENTS |\r | |
215 | ONIG_SYN_OP2_ASTERISK_CALLOUT_NAME |\r | |
b26691c4 | 216 | ONIG_SYN_OP2_ESC_X_Y_TEXT_SEGMENT |\r |
14b0e578 CS |
217 | ONIG_SYN_OP2_ESC_P_BRACE_CHAR_PROPERTY |\r |
218 | ONIG_SYN_OP2_ESC_P_BRACE_CIRCUMFLEX_NOT |\r | |
219 | ONIG_SYN_OP2_QMARK_LT_NAMED_GROUP |\r | |
220 | ONIG_SYN_OP2_ESC_K_NAMED_BACKREF |\r | |
b602265d DG |
221 | ONIG_SYN_OP2_ESC_G_SUBEXP_CALL |\r |
222 | ONIG_SYN_OP2_ESC_CAPITAL_K_KEEP |\r | |
223 | ONIG_SYN_OP2_ESC_CAPITAL_R_GENERAL_NEWLINE |\r | |
224 | ONIG_SYN_OP2_ESC_CAPITAL_N_O_SUPER_DOT |\r | |
225 | ONIG_SYN_OP2_QMARK_PERL_SUBEXP_CALL )\r | |
14b0e578 CS |
226 | , ( SYN_GNU_REGEX_BV |\r |
227 | ONIG_SYN_CAPTURE_ONLY_NAMED_GROUP |\r | |
228 | ONIG_SYN_ALLOW_MULTIPLEX_DEFINITION_NAME )\r | |
229 | , ONIG_OPTION_SINGLELINE\r | |
230 | ,\r | |
231 | {\r | |
232 | (OnigCodePoint )'\\' /* esc */\r | |
233 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar '.' */\r | |
234 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anytime '*' */\r | |
235 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* zero or one time '?' */\r | |
236 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* one or more time '+' */\r | |
237 | , (OnigCodePoint )ONIG_INEFFECTIVE_META_CHAR /* anychar anytime */\r | |
238 | }\r | |
239 | };\r | |
240 | \r | |
241 | \r | |
242 | \r | |
243 | extern int\r | |
244 | onig_set_default_syntax(OnigSyntaxType* syntax)\r | |
245 | {\r | |
246 | if (IS_NULL(syntax))\r | |
b602265d | 247 | syntax = ONIG_SYNTAX_ONIGURUMA;\r |
14b0e578 CS |
248 | \r |
249 | OnigDefaultSyntax = syntax;\r | |
250 | return 0;\r | |
251 | }\r | |
252 | \r | |
253 | extern void\r | |
254 | onig_copy_syntax(OnigSyntaxType* to, OnigSyntaxType* from)\r | |
255 | {\r | |
256 | *to = *from;\r | |
257 | }\r | |
258 | \r | |
259 | extern void\r | |
260 | onig_set_syntax_op(OnigSyntaxType* syntax, unsigned int op)\r | |
261 | {\r | |
262 | syntax->op = op;\r | |
263 | }\r | |
264 | \r | |
265 | extern void\r | |
266 | onig_set_syntax_op2(OnigSyntaxType* syntax, unsigned int op2)\r | |
267 | {\r | |
268 | syntax->op2 = op2;\r | |
269 | }\r | |
270 | \r | |
271 | extern void\r | |
272 | onig_set_syntax_behavior(OnigSyntaxType* syntax, unsigned int behavior)\r | |
273 | {\r | |
274 | syntax->behavior = behavior;\r | |
275 | }\r | |
276 | \r | |
277 | extern void\r | |
278 | onig_set_syntax_options(OnigSyntaxType* syntax, OnigOptionType options)\r | |
279 | {\r | |
280 | syntax->options = options;\r | |
281 | }\r | |
282 | \r | |
283 | extern unsigned int\r | |
284 | onig_get_syntax_op(OnigSyntaxType* syntax)\r | |
285 | {\r | |
286 | return syntax->op;\r | |
287 | }\r | |
288 | \r | |
289 | extern unsigned int\r | |
290 | onig_get_syntax_op2(OnigSyntaxType* syntax)\r | |
291 | {\r | |
292 | return syntax->op2;\r | |
293 | }\r | |
294 | \r | |
295 | extern unsigned int\r | |
296 | onig_get_syntax_behavior(OnigSyntaxType* syntax)\r | |
297 | {\r | |
298 | return syntax->behavior;\r | |
299 | }\r | |
300 | \r | |
301 | extern OnigOptionType\r | |
302 | onig_get_syntax_options(OnigSyntaxType* syntax)\r | |
303 | {\r | |
304 | return syntax->options;\r | |
305 | }\r | |
306 | \r | |
307 | #ifdef USE_VARIABLE_META_CHARS\r | |
308 | extern int onig_set_meta_char(OnigSyntaxType* enc,\r | |
309 | unsigned int what, OnigCodePoint code)\r | |
310 | {\r | |
311 | switch (what) {\r | |
312 | case ONIG_META_CHAR_ESCAPE:\r | |
313 | enc->meta_char_table.esc = code;\r | |
314 | break;\r | |
315 | case ONIG_META_CHAR_ANYCHAR:\r | |
316 | enc->meta_char_table.anychar = code;\r | |
317 | break;\r | |
318 | case ONIG_META_CHAR_ANYTIME:\r | |
319 | enc->meta_char_table.anytime = code;\r | |
320 | break;\r | |
321 | case ONIG_META_CHAR_ZERO_OR_ONE_TIME:\r | |
322 | enc->meta_char_table.zero_or_one_time = code;\r | |
323 | break;\r | |
324 | case ONIG_META_CHAR_ONE_OR_MORE_TIME:\r | |
325 | enc->meta_char_table.one_or_more_time = code;\r | |
326 | break;\r | |
327 | case ONIG_META_CHAR_ANYCHAR_ANYTIME:\r | |
328 | enc->meta_char_table.anychar_anytime = code;\r | |
329 | break;\r | |
330 | default:\r | |
331 | return ONIGERR_INVALID_ARGUMENT;\r | |
332 | break;\r | |
333 | }\r | |
334 | return 0;\r | |
335 | }\r | |
336 | #endif /* USE_VARIABLE_META_CHARS */\r |