Quick Reference Boost , ,
Quick
Reference
Это не предназначено для полной, подробной ссылки; и это не предназначено для того, чтобы быть полезным для читателей, которые еще не знакомы с Духом. Это просто краткое напоминание о синтаксисе и поведении каждого компонента со ссылками на полную документацию.
Примитивные парсерные генераторы (аргументы действия перечислены справа)
Другие парсерные элементы
Операторы
Null parsers
end_p
Matches EOF
iter,iter
eps_p
eps_p (P)
Matches without consuming text
iter,iter
epsilon_p
epsilon_p (P)
Synonym for eps_p
iter,iter
nothing_p
Always fails
iter,iter
Character parsers
alnum_p
Matches any alphanumeric character
char
alpha_p
Matches any letter
char
anychar_p
Matches any character
char
blank_p
Matches a space or tab
char
ch_p (char)
Matches a character
char
chset_p (charset)
Matches a character in the set
char
cntrl_p
Matches any control character
char
digit_p
Matches any digit
char
f_ch_p (func)
Matches a character
char
f_range_p (func1,
func2)
Matches any character in the inclusive range
char
graph_p
Matches any non-space printable character
char
lower_p
Matches any lower-case letter
char
print_p
Matches any printable character
char
punct_p
Matches any punctuation mark
char
range_p (char1,
char2)
Matches any character in the inclusive range
char
sign_p
Matches a plus or minus sign
bool
space_p
Matches any whitespace character
char
upper_p
Matches any upper-case letter
char
xdigit_p
Matches any hexadecimal digit
char
Number parsers
bin_p
Matches an unsigned binary integer
numeric
hex_p
Matches an unsigned hexadecimal integer
numeric
int_p
Matches a signed decimal integer
numeric
int_parser <type,
base, min, max>
Matches a signed integer with min to max digits
numeric
oct_p
Matches an unsigned octal integer
numeric
real_p
Matches a floating point number
numeric
real_parser <type,
policy>
Matches a floating point number
numeric
strict_real_p
Matches a floating point number (requires decimal point)
numeric
strict_ureal_p
Matches an unsigned FP number (requires decimal point)
numeric
uint_p
Matches an unsigned decimal integer
numeric
uint_parser <type,
base, min, max>
Matches an unsigned integer with min to max digits
numeric
ureal_p
Matches an unsigned FP number
numeric
Other lexeme parsers
c_escape_ch_p
Matches a C escape code
char
comment_p (string)
comment_p (string1, string2)
Matches C++ or C-style comments
iter,iter
eol_p
Matches CR, LF, or any combination
iter,iter
f_str_p (func1,
func2)
Matches a string
iter,iter
lex_escape_ch_p
Matches a C escape code or any backslash escape
char
regex_p (regex)
Matches a regular expression
iter,iter
str_p (string)
str_p (iter1, iter2)
Matches a string
iter,iter
Text parsers
chseq_p (string)
chseq_p (iter1, iter2)
Matches a string, possibly with embedded whitespace
iter,iter
f_chseq_p (func1,
func2)
Matches a string, possibly with embedded whitespace
iter,iter
Compound parsers
confix_p (open,
exp, close)
Matches open >> (exp - close) >> close
do_p [P].while_p (cond)
Matches while a condition is true (at least once)
for_p (init,
cond, step)[P]
Matches in a loop
functor_parser <func>
Wraps an external parser
if_p (cond)[P]
if_p (cond)[P].else_p [P]
Matches depending on a condition
lazy_p (P)
Evaluates a parser at run time
list_p
list_p (del)
list_p (item, del)
list_p (item, del, end)
Matches a delimited list
repeat_p (num)[P]
repeat_p (min, max)[P]
repeat_p (min, more )[P]
Matches multiple times
while_p (cond) [P]
Matches while a condition is true
General directives
as_lower_d [P]
Converts text to lower case before matching
attach_action_d [(P1
op P2)[act]]
Transforms to P1 [act] op P2 [act]
lexeme_d [P]
Turns off whitespace skipping
limit_d [P](min,
max)
Matches only if the value is within the range
longest_d [P]
Matches the longest of alternatives
max_limit_d [P](max)
Matches only if value <= max
min_limit_d [P](min)
Matches only if value >= min
refactor_action_d [P1
[act] op P2]
Transforms to (P1 op P2) [act]
refactor_unary_d [op1
P1 op2 P2]
Transforms to op1 (P1 op2 P2)
scoped_lock_d [P](mutex)
Locks a mutex while matching
shortest_d [P]
Matches the shortest of alternatives
Tree-specific directives
access_node_d [P]
Passes node value to action
discard_first_node_d [P]
Discards first node
discard_last_node_d [P]
Discards last node
discard_node_d [P]
Discards the generated node
infix_node_d [P]
Discards even-position nodes
inner_node_d [P]
Discards first and last nodes
leaf_node_d [P]
Generates a single node with no children
no_node_d [P]
Does not generate a node
root_node_d [P]
Identifies root nodes for an AST
token_node_d [P]
Synonym for leaf_node_d
Unary operators
!P
Matches P or an empty string
*P
Matches P zero or more times
+P
Matches P one or more times
~P
Matches anything that does not match P
Binary operators
P1 % P2
Matches one or more P1 separated by P2
P1 - P2
Matches P1 but not P2
P1 >> P2
Matches P1 followed by P2
P1 & P2
Matches both P1 and P2
P1 ^ P2
Matches P1 or P2 , but not both
P1 | P2
Matches P1 or P2
P1 && P2
Synonym for P1 >> P2
P1 || P2
Matches P1 | P2 | P1 >> P2
Copyright © 2003 Ross Smith
Use, modification and distribution is subject to the Boost Software
License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
Статья Quick Reference раздела может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: ::