Alien-SmokeQt
view release on metacpan or search on metacpan
generator/parser/lexer.cpp view on Meta::CPAN
ADD_TOKEN(incr);
ADD_TOKEN(inline);
ADD_TOKEN(int);
ADD_TOKEN(k_dcop);
ADD_TOKEN(k_dcop_signals);
ADD_TOKEN(long);
ADD_TOKEN(mutable);
ADD_TOKEN(namespace);
ADD_TOKEN(new);
ADD_TOKEN(not);
ADD_TOKEN(not_eq);
ADD_TOKEN(operator);
ADD_TOKEN(or);
ADD_TOKEN(or_eq);
ADD_TOKEN(private);
ADD_TOKEN(protected);
ADD_TOKEN(public);
ADD_TOKEN(register);
ADD_TOKEN(reinterpret_cast);
ADD_TOKEN(return);
ADD_TOKEN(short);
generator/parser/lexer.cpp view on Meta::CPAN
//(*session->token_stream)[index].extra.symbol =
//control->findOrInsertName((const char*) begin, cursor - begin);
(*session->token_stream)[index++].kind = Token_number_literal;
}
void Lexer::scan_not()
{
/*
'!' ::= not
'!=' ::= not_equal
*/
++cursor;
if (*cursor == '=')
{
++cursor;
(*session->token_stream)[index++].kind = Token_not_eq;
}
else
{
(*session->token_stream)[index++].kind = '!';
}
}
void Lexer::scan_remainder()
{
/*
generator/parser/parser.cpp view on Meta::CPAN
case '~':
case '!':
case '=':
case '<':
case '>':
case ',':
case Token_assign:
case Token_shift:
case Token_eq:
case Token_not:
case Token_not_eq:
case Token_leq:
case Token_geq:
case Token_and:
case Token_or:
case Token_incr:
case Token_decr:
case Token_ptrmem:
case Token_arrow:
ast->op = session->token_stream->cursor();
advance();
generator/parser/parser.cpp view on Meta::CPAN
}
bool Parser::parseEqualityExpression(ExpressionAST *&node, bool templArgs)
{
std::size_t start = session->token_stream->cursor();
if (!parseRelationalExpression(node, templArgs))
return false;
while (session->token_stream->lookAhead() == Token_eq
|| session->token_stream->lookAhead() == Token_not_eq)
{
std::size_t op = session->token_stream->cursor();
advance();
ExpressionAST *rightExpr = 0;
if (!parseRelationalExpression(rightExpr, templArgs))
return false;
BinaryExpressionAST *ast = CreateNode<BinaryExpressionAST>(session->mempool);
ast->op = op;
generator/parser/tokens.cpp view on Meta::CPAN
"inline",
"int",
"k_dcop",
"k_dcop_signals",
"leq",
"long",
"mutable",
"namespace",
"new",
"not",
"not_eq",
"number_literal",
"operator",
"or",
"or_eq",
"preproc",
"private",
"protected",
"ptrmem",
"public",
"register",
generator/parser/tokens.h view on Meta::CPAN
Token_inline,
Token_int,
Token_k_dcop,
Token_k_dcop_signals,
Token_leq,
Token_long,
Token_mutable,
Token_namespace,
Token_new,
Token_not,
Token_not_eq,
Token_number_literal,
Token_operator,
Token_or,
Token_or_eq,
Token_preproc,
Token_private,
Token_protected,
Token_ptrmem,
Token_public,
Token_register,
( run in 0.321 second using v1.01-cache-2.11-cpan-0a987023a57 )