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

cpp_scan.h File Reference

CKPM C pre-processor 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_SPACE   26
#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_COMMENT   100
#define SYM_NEWLINE   101
#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_INCLUDE   200
#define SYM_DEFINE   201
#define SYM_DEFINED   202
#define SYM_IF   203
#define SYM_IFDEF   204
#define SYM_ELSIF   205
#define SYM_ELSE   206
#define SYM_ENDIF   207
#define SYM_UNDEF   208
#define SYM_OTHER   1000

Functions

void GetSymNoSpace (int fd, struct _token *t)
 get next symbol that is no white space
void GetSym (int fd, struct _token *t)
 get next symbol
char * sym_to_string (int sym)
 convert symbols to the corresponding text


Detailed Description

CKPM C pre-processor scanner definitions.


Define Documentation

#define SYM_AMPERSAND   33
 

'&' ampersand symbol

#define SYM_ASTERISK   29
 

'*' multiplication

#define SYM_BAR   8
 

'|' bar symbol

#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_DEFINE   201
 

define symbol

#define SYM_DEFINED   202
 

defined symbol

#define SYM_DIVIDE   24
 

'/' arithmetic division

#define SYM_ELSE   206
 

else symbol

#define SYM_ELSIF   205
 

elsif symbol

#define SYM_ENDIF   207
 

endif symbol

#define SYM_EQUAL   9
 

'=' equal symbol

#define SYM_EXCLAMATION_MARK   30
 

'!' exclamation mark

#define SYM_HEX_NUMBER   104
 

hexa decimal number

#define SYM_IDENT   105
 

identifier symbol

#define SYM_IF   203
 

if symbol

#define SYM_IFDEF   204
 

ifdef symbol

#define SYM_INCLUDE   200
 

include symbol

#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_MINUS   28
 

'-' negative sign / subtraction

#define SYM_NEWLINE   101
 

newline symbol

#define SYM_NUMBER   102
 

decimal number

#define SYM_NUMBER_SIGN   18
 

'#' number sign

#define SYM_OCT_NUMBER   103
 

octal number

#define SYM_OTHER   1000
 

other symbol

#define SYM_PERIOD   15
 

'.' period symbol

#define SYM_PLUS   27
 

'+' positive sign / addition

#define SYM_REMINDER   25
 

'%' reminder of an integer division

#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_SPACE   26
 

' ' white space or tabulator

#define SYM_UNDEF   208
 

undef symbol


Function Documentation

void GetSym int  fd,
struct _token t
 

get next symbol

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

void GetSymNoSpace int  fd,
struct _token t
 

get next symbol that is no white space

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

char* sym_to_string 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:37 2006 for CKPMcc by  doxygen 1.4.4