Aseba  1.5.5
Public Types | Public Member Functions | Public Attributes | List of all members
Aseba::Compiler::Token Struct Reference

A token is a parsed element of inputs. More...

#include <compiler.h>

Public Types

enum  Type {
  TOKEN_END_OF_STREAM = 0, TOKEN_STR_when, TOKEN_STR_emit, TOKEN_STR_hidden_emit,
  TOKEN_STR_for, TOKEN_STR_in, TOKEN_STR_step, TOKEN_STR_while,
  TOKEN_STR_do, TOKEN_STR_if, TOKEN_STR_then, TOKEN_STR_else,
  TOKEN_STR_elseif, TOKEN_STR_end, TOKEN_STR_var, TOKEN_STR_const,
  TOKEN_STR_call, TOKEN_STR_sub, TOKEN_STR_callsub, TOKEN_STR_onevent,
  TOKEN_STR_abs, TOKEN_STR_return, TOKEN_STRING_LITERAL, TOKEN_INT_LITERAL,
  TOKEN_PAR_OPEN, TOKEN_PAR_CLOSE, TOKEN_BRACKET_OPEN, TOKEN_BRACKET_CLOSE,
  TOKEN_COLON, TOKEN_COMMA, TOKEN_ASSIGN, TOKEN_OP_OR,
  TOKEN_OP_AND, TOKEN_OP_NOT, TOKEN_OP_EQUAL, TOKEN_OP_NOT_EQUAL,
  TOKEN_OP_BIGGER, TOKEN_OP_BIGGER_EQUAL, TOKEN_OP_SMALLER, TOKEN_OP_SMALLER_EQUAL,
  TOKEN_OP_ADD, TOKEN_OP_NEG, TOKEN_OP_MULT, TOKEN_OP_DIV,
  TOKEN_OP_MOD, TOKEN_OP_SHIFT_LEFT, TOKEN_OP_SHIFT_RIGHT, TOKEN_OP_BIT_OR,
  TOKEN_OP_BIT_XOR, TOKEN_OP_BIT_AND, TOKEN_OP_BIT_NOT, TOKEN_OP_ADD_EQUAL,
  TOKEN_OP_NEG_EQUAL, TOKEN_OP_MULT_EQUAL, TOKEN_OP_DIV_EQUAL, TOKEN_OP_MOD_EQUAL,
  TOKEN_OP_SHIFT_LEFT_EQUAL, TOKEN_OP_SHIFT_RIGHT_EQUAL, TOKEN_OP_BIT_OR_EQUAL, TOKEN_OP_BIT_XOR_EQUAL,
  TOKEN_OP_BIT_AND_EQUAL, TOKEN_OP_PLUS_PLUS, TOKEN_OP_MINUS_MINUS
}
 

Public Member Functions

 Token (Type type, SourcePos pos=SourcePos(), const std::wstring &value=L"")
 Construct a new token of given type and value.
 
const std::wstring typeName () const
 Return the name of the type of this token.
 
std::wstring toWString () const
 Return a string representation of the token.
 
 operator Type () const
 

Public Attributes

enum Aseba::Compiler::Token::Type type
 type of this token
 
std::wstring sValue
 string version of the value
 
int iValue
 int version of the value, 0 if not applicable
 
SourcePos pos
 position of token in source code
 

Detailed Description

A token is a parsed element of inputs.


The documentation for this struct was generated from the following files: