Следующие таблицы содержат все те токены, которые должны быть распознаны лексером C++, который должен использоваться в сочетании с. Волновой двигательпредварительной обработки. Токены сгруппированы в категории, чтобы упростить внутреннюю логику и, в конечном итоге, программы драйверов. Идентификаторы токенов определяются какenum, и рекомендуется повторно использовать это определение для собственных реализаций лексера.
Обратите внимание, что препроцессорный движок выполняет некоторое преобразование токенов, так что не все идентификаторы токенов в списке здесь могут возникать внутри токенов, возвращенных из итератора предварительной обработки.
List of literal token id's
Идентификатор токенов
Категория токенов
Значение токена
T_CHARLITY
Разработчик:LiteralTokenType
<'a', '\t', '\u0057'>
T_LOATLIT
FloatingLiteralTokenType
-1.23456e78
T_IDENTFIER
Идентификатор токен Тип
C++ identifier
ОКТАЛИНТ
IntegerLiteralTokenType
007
T_DECIMALINT
IntegerLiteralTokenType
10
T_HEXAININ
IntegerLiteralTokenType
0x1234
T_INTLIT
IntegerLiteralTokenType
T_OCTALINT, T_DECIMALINT or T_HEXAINT
_LONGINTLIT
IntegerLiteralTokenType
0x1234LL
T_STRINGLIT
Разработчик:TokenType
"abc"
T_FALSE
Буллитерский TokenType
false
T_TRUE
Буллитерский TokenType
true
List of whitespace token id's
Идентификатор токенов
Категория токенов
Значение токена
T_NY
Неизвестный Token Тип
<any value not matched otherwise>
T_CCOMENT
WhiteSpaceTokenType
</* ... */>
T_CPPCOMCOMENT
WhiteSpaceTokenType
// ... \n
Т_пространство
WhiteSpaceTokenType
пустой или "
T_SPACE2
WhiteSpaceTokenType
'\v' or '\f'
T_EOF
EOFToken Тип
end of input
T_CONLINE
EOLToken Тип
'\\' followed by '\n'
T_NEWLINE
EOLToken Тип
'\n'
List of keyword token id's
Идентификатор токенов
Категория токенов
Значение токена
T_ASM
Ключевое словоTokenType
asm
T_AUTO
Ключевое словоTokenType
auto
T_BOOL
Ключевое словоTokenType
bool
T_BREAK
Ключевое словоTokenType
break
T_CASE
Ключевое словоTokenType
case
T_CATCH
Ключевое словоTokenType
catch
T_CHAR
Ключевое словоTokenType
char
T_CLASS
Ключевое словоTokenType
class
T_CONST
Ключевое словоTokenType
const
T_CONSTCAST
Ключевое словоTokenType
const_cast
T_CONTINUE
Ключевое словоTokenType
continue
T_DEFAULUL
Ключевое словоTokenType
default
T_DELELE
Ключевое словоTokenType
delete
T_DO
Ключевое словоTokenType
do
T_DOUBLE
Ключевое словоTokenType
double
T_DYNAMICCA
Ключевое словоTokenType
dynamic_cast
T_ELSE
Ключевое словоTokenType
else
T_ENUM
Ключевое словоTokenType
enum
T_EXPLICIC
Ключевое словоTokenType
explicit
T_EXPORT
Ключевое словоTokenType
export
T_EXTERN
Ключевое словоTokenType
extern
T_FLOAT
Ключевое словоTokenType
float
T_FOR
Ключевое словоTokenType
for
друг
Ключевое словоTokenType
friend
T_GOTO
Ключевое словоTokenType
goto
T_IF
Ключевое словоTokenType
if
T_INLINE
Ключевое словоTokenType
inline
T_INT
Ключевое словоTokenType
int
Длинный
Ключевое словоTokenType
long
T_MUTABLE
Ключевое словоTokenType
mutable
T_NAMESPACE
Ключевое словоTokenType
namespace
T_new
Ключевое словоTokenType
new
T_OPERATOR
Ключевое словоTokenType
operator
T_PRIVATE
Ключевое словоTokenType
private
T_PROTECTED
Ключевое словоTokenType
protected
T_PUBLIC
Ключевое словоTokenType
public
Регистратор
Ключевое словоTokenType
register
T_REINTERPRETCACAST
Ключевое словоTokenType
reinterpret_cast
T_RETURN
Ключевое словоTokenType
return
T_SHORT
Ключевое словоTokenType
short
T_SIGNED
Ключевое словоTokenType
signed
T_SIZEOF
Ключевое словоTokenType
sizeof
T_STATIC
Ключевое словоTokenType
static
T_STATICCACAST
Ключевое словоTokenType
static_cast
T_STRUCT
Ключевое словоTokenType
struct
T_SWITCH
Ключевое словоTokenType
switch
T_TEMPLATE
Ключевое словоTokenType
template
Это
Ключевое словоTokenType
this
T_ROW
Ключевое словоTokenType
throw
T_TRY
Ключевое словоTokenType
try
TYPEDEF
Ключевое словоTokenType
typedef
TYPEID
Ключевое словоTokenType
typeid
T_TYPENAME
Ключевое словоTokenType
typename
T_UNION
Ключевое словоTokenType
union
T_UNSIGNED
Ключевое словоTokenType
unsigned
T_USING
Ключевое словоTokenType
using
T_VIRTUAL
Ключевое словоTokenType
virtual
T_VOID
Ключевое словоTokenType
void
T_VOLATYLE
Ключевое словоTokenType
volatile
T_WCHART
Ключевое словоTokenType
wchar_t
T_HILE
Ключевое словоTokenType
while
List of operator token id's
Идентификатор токенов
Категория токенов
Значение токена
T_и
Оператор Token Тип
&
T_и
Оператор Token Тип
&&
T_ASSIGN
Оператор Token Тип
=
T_ANDASSIGN
Оператор Token Тип
&=
T_OR
Оператор Token Тип
|
T_ORASSIGN
Оператор Token Тип
|=
T_XOR
Оператор Token Тип
^
T_XORASSIGN
Оператор Token Тип
^=
T_COMMA
Оператор Token Тип
,
T_COLON
Оператор Token Тип
:
T_DIVIDIA
Оператор Token Тип
/
T_DIVIDEASSIGN
Оператор Token Тип
/=
T_DOT
Оператор Token Тип
.
T_DOTSTAR
Оператор Token Тип
.*
T_ELLIPSIS
Оператор Token Тип
...
T_EQUAL
Оператор Token Тип
==
T_GREATER
Оператор Token Тип
>
T_REATEREQUAL
Оператор Token Тип
>=
_LEFTBRACE
Оператор Token Тип
{
T_LESS
Оператор Token Тип
<
T_LESEQUAL
Оператор Token Тип
<=
T_LEFTPAREN
Оператор Token Тип
(
T_LEFTBRACKET
Оператор Token Тип
[
T_MINUS
Оператор Token Тип
-
T_MINUSASSIGN
Оператор Token Тип
-=
T_MINUSININ
Оператор Token Тип
--
T_PERCENT
Оператор Token Тип
%
T_PERCENTASSIGN
Оператор Token Тип
%=
T_NOT
Оператор Token Тип
!
T_NOTEQUAL
Оператор Token Тип
!=
T_OROROR
Оператор Token Тип
||
T_PLUS
Оператор Token Тип
+
T_PLUSASSIGN
Оператор Token Тип
+=
T_PLUSPLUS
Оператор Token Тип
++
T_ARROW
Оператор Token Тип
->
ARROWSTAR
Оператор Token Тип
->*
T_QUETION_MARK
Оператор Token Тип
?
ПРАВИЛА
Оператор Token Тип
}
T_GRHTPAREN
Оператор Token Тип
)
T_Правонарушитель
Оператор Token Тип
]
T_COLON_COLON
Оператор Token Тип
::
T_SEMICOLON
Оператор Token Тип
;
T_SHIFTLEFT
Оператор Token Тип
<<
T_SHIFTLEFTASSIGN
Оператор Token Тип
<<=
T_SHIFTRIGHT
Оператор Token Тип
>>
T_HIFTRIGHTASSIGN
Оператор Token Тип
>>=
T_STAR
Оператор Token Тип
*
T_COMPL
Оператор Token Тип
~
T_STARASSIGN
Оператор Token Тип
*=
T_POUND_POUND
Оператор Token Тип
##
T_POUND
Оператор Token Тип
#
T_AND_ALT
ОператорTokenType . Тип
bitand
T_ANDASSIGN_ALT
ОператорTokenType . Тип
and_eq
T_OR_ALT
ОператорTokenType . Тип
or
T_ORASSIGN_ALT
ОператорTokenType . Тип
or_eq
T_XOR_ALT
ОператорTokenType . Тип
xor
T_XORASSIGN_ALT
ОператорTokenType . Тип
xor_eq
T_LEFTBRACE_ALT
ОператорTokenType . Тип
<%
T_LEFTBRACKET_ALT
ОператорTokenType . Тип
<:
T_NOT_ALT
ОператорTokenType . Тип
not
T_NOTEQUAL_ALT
ОператорTokenType . Тип
not_eq
T_rightbrace_alt
ОператорTokenType . Тип
%>
T_rightbackt_alt
ОператорTokenType . Тип
:>
T_COMPL_ALT
ОператорTokenType . Тип
compl
T_POUND_POUND_ALT
ОператорTokenType . Тип
%:%:
T_POUND_ALT
ОператорTokenType . Тип
%:
T_OR_TRIGRAPH
ОператорTokenType | TriGraphToken Тип
??!
T_XOR_TRIGRAPH
ОператорTokenType | TriGraphToken Тип
??'
T_LEFTBRACE_TRIGRAPH
ОператорTokenType | TriGraphToken Тип
??<
T_LEFTBRACKET_TRIGRAPH
ОператорTokenType | TriGraphToken Тип
??(
T_RIGHTBRACE_TRIGRAPH
ОператорTokenType | TriGraphToken Тип
??>
T_RIGHTBRACKET_TRIGRAPH
ОператорTokenType | TriGraphToken Тип
??)
T_COMPL_TRIGRAPH
ОператорTokenType | TriGraphToken Тип
??-
T_POUND_POUND_TRIGRAPH
ОператорTokenType | TriGraphToken Тип
??=??=
T_POUND_TRIGRAPH
ОператорTokenType | TriGraphToken Тип
??=
Список токенов препроцессора в следующей таблице возвращается только лексером C++. Препроцессор естественным образом воздействует на эти токены, и они не возвращаются путем отмены итераторов предварительной обработки.
Distributed under 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)
Last updated:
Friday, January 18, 2008 11:35
Статья The Token Identifiers раздела может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.