Main Page | Class List | Directories | File List | Class Members | File Members

cc_scan.h File Reference

CKPM C compiler scanner definitions. More...

#include "cpp_token.h"

Defines

#define SYM_LEFT_PAREN   3
#define SYM_LEFT_BRACK   4
#define SYM_LEFT_BRACE   5
#define SYM_LEFT_ANGLE_BRACK   6
#define SYM_LEFT_SHIFT   7
#define SYM_BAR   8
#define SYM_EQUAL   9
#define SYM_RIGHT_PAREN   10
#define SYM_RIGHT_BRACK   11
#define SYM_RIGHT_BRACE   12
#define SYM_RIGHT_ANGLE_BRACK   13
#define SYM_RIGHT_SHIFT   14
#define SYM_PERIOD   15
#define SYM_NUMBER_SIGN   18
#define SYM_DIVIDE   24
#define SYM_REMINDER   25
#define SYM_PLUS   27
#define SYM_MINUS   28
#define SYM_ASTERISK   29
#define SYM_EXCLAMATION_MARK   30
#define SYM_LOGICAL_OR   31
#define SYM_LOGICAL_AND   32
#define SYM_AMPERSAND   33
#define SYM_CMP_EQ   34
#define SYM_CMP_NEQ   35
#define SYM_CMP_GE   36
#define SYM_CMP_LE   37
#define SYM_COLON   38
#define SYM_SEMICOLON   39
#define SYM_COMMA   40
#define SYM_ARROW   41
#define SYM_MULT_EQ   42
#define SYM_DIV_EQ   43
#define SYM_REM_EQ   44
#define SYM_ADD_EQ   45
#define SYM_SUB_EQ   46
#define SYM_SHL_EQ   47
#define SYM_SHR_EQ   48
#define SYM_AND_EQ   49
#define SYM_XOR_EQ   50
#define SYM_OR_EQ   51
#define SYM_TILDE   52
#define SYM_XOR   53
#define SYM_INCREMENT   54
#define SYM_DECREMENT   55
#define SYM_COMMENT   100
#define SYM_NUMBER   102
#define SYM_OCT_NUMBER   103
#define SYM_HEX_NUMBER   104
#define SYM_IDENT   105
#define SYM_LITERAL   106
#define SYM_CHARACTER   107
#define SYM_SIGNED   201
#define SYM_UNSIGNED   202
#define SYM_AUTO   203
#define SYM_REGISTER   204
#define SYM_UNION   205
#define SYM_CONST   206
#define SYM_VOLATILE   207
#define SYM_EXTERN   208
#define SYM_STATIC   209
#define SYM_VOID   210
#define SYM_CHAR   211
#define SYM_INT   212
#define SYM_LONG   213
#define SYM_DOUBLE   214
#define SYM_FLOAT   215
#define SYM_ENUM   216
#define SYM_SHORT   217
#define SYM_STRUCT   218
#define SYM_TYPEDEF   219
#define SYM_IF   220
#define SYM_ELSE   221
#define SYM_WHILE   222
#define SYM_DO   223
#define SYM_FOR   224
#define SYM_BREAK   225
#define SYM_CONTINUE   226
#define SYM_RETURN   227
#define SYM_SIZEOF   228
#define SYM_GOTO   229
#define SYM_SWITCH   230
#define SYM_CASE   231
#define SYM_DEFAULT   232
#define SYM_OTHER   1000
#define SYM_END   2000

Functions

void GetSymIntCC (int fd, struct _token *t)
 get next symbol (internal)
char * SymToStringCC (int sym)
 convert symbols to the corresponding text


Detailed Description

CKPM C compiler scanner definitions.


Define Documentation

#define SYM_ADD_EQ   45
 

'+=' add in place

#define SYM_AMPERSAND   33
 

'&' ampersand symbol

#define SYM_AND_EQ   49
 

'&=' bitwise and in place

#define SYM_ARROW   41
 

'->' dereference operator

#define SYM_ASTERISK   29
 

'*' multiplication

#define SYM_AUTO   203
 

auto

#define SYM_BAR   8
 

'|' bar symbol

#define SYM_BREAK   225
 

break

#define SYM_CASE   231
 

case

#define SYM_CHAR   211
 

type char

#define SYM_CHARACTER   107
 

a single character

#define SYM_CMP_EQ   34
 

'==' comparison equal symbol

#define SYM_CMP_GE   36
 

'>=' comparison greater or equal

#define SYM_CMP_LE   37
 

'<=' comparison lower or equal

#define SYM_CMP_NEQ   35
 

'!=' comparison not equal symbol

#define SYM_COLON   38
 

':' colon

#define SYM_COMMA   40
 

',' comma

#define SYM_COMMENT   100
 

comment symbol

#define SYM_CONST   206
 

const

#define SYM_CONTINUE   226
 

continue

#define SYM_DECREMENT   55
 

'--' decrement operator

#define SYM_DEFAULT   232
 

default

#define SYM_DIV_EQ   43
 

'/=' divide in place

#define SYM_DIVIDE   24
 

'/' arithmetic division

#define SYM_DO   223
 

do

#define SYM_DOUBLE   214
 

type double

#define SYM_ELSE   221
 

else

#define SYM_END   2000
 

no more symbols to read

#define SYM_ENUM   216
 

enum

#define SYM_EQUAL   9
 

'=' equal symbol

#define SYM_EXCLAMATION_MARK   30
 

'!' exclamation mark

#define SYM_EXTERN   208
 

extern

#define SYM_FLOAT   215
 

type float

#define SYM_FOR   224
 

for

#define SYM_GOTO   229
 

goto

#define SYM_HEX_NUMBER   104
 

hexa decimal number

#define SYM_IDENT   105
 

identifier symbol

#define SYM_IF   220
 

if

#define SYM_INCREMENT   54
 

'++' increment operator

#define SYM_INT   212
 

type int

#define SYM_LEFT_ANGLE_BRACK   6
 

'<' left angle bracket

#define SYM_LEFT_BRACE   5
 

'{' left brace symbol

#define SYM_LEFT_BRACK   4
 

'[' left bracket symbol

#define SYM_LEFT_PAREN   3
 

'(' left parenthesis symbol

#define SYM_LEFT_SHIFT   7
 

'<<' left shift symbol

#define SYM_LITERAL   106
 

string literal symbol

#define SYM_LOGICAL_AND   32
 

'&&' logical and operator

#define SYM_LOGICAL_OR   31
 

'||' logical or operator

#define SYM_LONG   213
 

type long

#define SYM_MINUS   28
 

'-' negative sign / subtraction

#define SYM_MULT_EQ   42
 

'*=' multiply in place

#define SYM_NUMBER   102
 

decimal number

#define SYM_NUMBER_SIGN   18
 

'#' number sign

#define SYM_OCT_NUMBER   103
 

octal number

#define SYM_OR_EQ   51
 

'|=' bitwise or in place

#define SYM_OTHER   1000
 

other symbol

#define SYM_PERIOD   15
 

'.' period symbol

#define SYM_PLUS   27
 

'+' positive sign / addition

#define SYM_REGISTER   204
 

register

#define SYM_REM_EQ   44
 

'=' reminder in place

#define SYM_REMINDER   25
 

'%' reminder of an integer division

#define SYM_RETURN   227
 

return

#define SYM_RIGHT_ANGLE_BRACK   13
 

'>' right angle bracket

#define SYM_RIGHT_BRACE   12
 

'}' right brace symbol

#define SYM_RIGHT_BRACK   11
 

']' right bracket symbol

#define SYM_RIGHT_PAREN   10
 

')' right parenthesis symbol

#define SYM_RIGHT_SHIFT   14
 

'>>' right shift symbol

#define SYM_SEMICOLON   39
 

';' semi colon

#define SYM_SHL_EQ   47
 

'<<=' shift left in place

#define SYM_SHORT   217
 

type short

#define SYM_SHR_EQ   48
 

'>>=' shift rigth in place

#define SYM_SIGNED   201
 

signed

#define SYM_SIZEOF   228
 

sizeof

#define SYM_STATIC   209
 

static

#define SYM_STRUCT   218
 

struct

#define SYM_SUB_EQ   46
 

'-=' subtract in place

#define SYM_SWITCH   230
 

switch

#define SYM_TILDE   52
 

'~' bitwise ones complement

#define SYM_TYPEDEF   219
 

typedef

#define SYM_UNION   205
 

union

#define SYM_UNSIGNED   202
 

unsigned

#define SYM_VOID   210
 

type void

#define SYM_VOLATILE   207
 

volatile

#define SYM_WHILE   222
 

while

#define SYM_XOR   53
 

'^' bitwise xor

#define SYM_XOR_EQ   50
 

'^=' bitwise xor in place


Function Documentation

void GetSymIntCC int  fd,
struct _token t
 

get next symbol (internal)

Parameters:
fd file descriptor index of the input file
t contains a complete token

char* SymToStringCC int  sym  ) 
 

convert symbols to the corresponding text

Parameters:
sym the symbol
Returns:
the symbol as a string


Generated on Thu Jul 13 03:56:36 2006 for CKPMcc by  doxygen 1.4.4