]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | /* |
2 | * | |
3 | * Copyright (c) 2003 | |
4 | * John Maddock | |
5 | * | |
6 | * Use, modification and distribution are subject to the | |
7 | * Boost Software License, Version 1.0. (See accompanying file | |
8 | * LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |
9 | * | |
10 | */ | |
11 | ||
12 | /* | |
13 | * LOCATION: see http://www.boost.org for most recent version. | |
14 | * FILE syntax_type.hpp | |
15 | * VERSION see <boost/version.hpp> | |
16 | * DESCRIPTION: Declares regular expression synatx type enumerator. | |
17 | */ | |
18 | ||
19 | #ifndef BOOST_REGEX_SYNTAX_TYPE_HPP | |
20 | #define BOOST_REGEX_SYNTAX_TYPE_HPP | |
21 | ||
22 | namespace boost{ | |
23 | namespace regex_constants{ | |
24 | ||
25 | typedef unsigned char syntax_type; | |
26 | ||
27 | // | |
28 | // values chosen are binary compatible with previous version: | |
29 | // | |
30 | static const syntax_type syntax_char = 0; | |
31 | static const syntax_type syntax_open_mark = 1; | |
32 | static const syntax_type syntax_close_mark = 2; | |
33 | static const syntax_type syntax_dollar = 3; | |
34 | static const syntax_type syntax_caret = 4; | |
35 | static const syntax_type syntax_dot = 5; | |
36 | static const syntax_type syntax_star = 6; | |
37 | static const syntax_type syntax_plus = 7; | |
38 | static const syntax_type syntax_question = 8; | |
39 | static const syntax_type syntax_open_set = 9; | |
40 | static const syntax_type syntax_close_set = 10; | |
41 | static const syntax_type syntax_or = 11; | |
42 | static const syntax_type syntax_escape = 12; | |
43 | static const syntax_type syntax_dash = 14; | |
44 | static const syntax_type syntax_open_brace = 15; | |
45 | static const syntax_type syntax_close_brace = 16; | |
46 | static const syntax_type syntax_digit = 17; | |
47 | static const syntax_type syntax_comma = 27; | |
48 | static const syntax_type syntax_equal = 37; | |
49 | static const syntax_type syntax_colon = 36; | |
50 | static const syntax_type syntax_not = 53; | |
51 | ||
52 | // extensions: | |
53 | ||
54 | static const syntax_type syntax_hash = 13; | |
55 | static const syntax_type syntax_newline = 26; | |
56 | ||
57 | // escapes: | |
58 | ||
59 | typedef syntax_type escape_syntax_type; | |
60 | ||
61 | static const escape_syntax_type escape_type_word_assert = 18; | |
62 | static const escape_syntax_type escape_type_not_word_assert = 19; | |
63 | static const escape_syntax_type escape_type_control_f = 29; | |
64 | static const escape_syntax_type escape_type_control_n = 30; | |
65 | static const escape_syntax_type escape_type_control_r = 31; | |
66 | static const escape_syntax_type escape_type_control_t = 32; | |
67 | static const escape_syntax_type escape_type_control_v = 33; | |
68 | static const escape_syntax_type escape_type_ascii_control = 35; | |
69 | static const escape_syntax_type escape_type_hex = 34; | |
70 | static const escape_syntax_type escape_type_unicode = 0; // not used | |
71 | static const escape_syntax_type escape_type_identity = 0; // not used | |
72 | static const escape_syntax_type escape_type_backref = syntax_digit; | |
73 | static const escape_syntax_type escape_type_decimal = syntax_digit; // not used | |
74 | static const escape_syntax_type escape_type_class = 22; | |
75 | static const escape_syntax_type escape_type_not_class = 23; | |
76 | ||
77 | // extensions: | |
78 | ||
79 | static const escape_syntax_type escape_type_left_word = 20; | |
80 | static const escape_syntax_type escape_type_right_word = 21; | |
81 | static const escape_syntax_type escape_type_start_buffer = 24; // for \` | |
82 | static const escape_syntax_type escape_type_end_buffer = 25; // for \' | |
83 | static const escape_syntax_type escape_type_control_a = 28; // for \a | |
84 | static const escape_syntax_type escape_type_e = 38; // for \e | |
85 | static const escape_syntax_type escape_type_E = 47; // for \Q\E | |
86 | static const escape_syntax_type escape_type_Q = 48; // for \Q\E | |
87 | static const escape_syntax_type escape_type_X = 49; // for \X | |
88 | static const escape_syntax_type escape_type_C = 50; // for \C | |
89 | static const escape_syntax_type escape_type_Z = 51; // for \Z | |
90 | static const escape_syntax_type escape_type_G = 52; // for \G | |
91 | ||
92 | static const escape_syntax_type escape_type_property = 54; // for \p | |
93 | static const escape_syntax_type escape_type_not_property = 55; // for \P | |
94 | static const escape_syntax_type escape_type_named_char = 56; // for \N | |
95 | static const escape_syntax_type escape_type_extended_backref = 57; // for \g | |
96 | static const escape_syntax_type escape_type_reset_start_mark = 58; // for \K | |
97 | static const escape_syntax_type escape_type_line_ending = 59; // for \R | |
98 | ||
99 | static const escape_syntax_type syntax_max = 60; | |
100 | ||
101 | } | |
102 | } | |
103 | ||
104 | ||
105 | #endif |