600
|
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 |
|
|
96 |
static const escape_syntax_type syntax_max = 57;
|
|
97 |
|
|
98 |
}
|
|
99 |
}
|
|
100 |
|
|
101 |
|
|
102 |
#endif
|