Subversion Repositories Games.Carmageddon

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. #ifndef _LEXER_H_
  2. #define _LEXER_H_
  3.  
  4. #include "brender/br_types.h"
  5.  
  6. void lexerError(br_lexer* l, char* string);
  7.  
  8. br_lexer* BrLexerAllocate(br_lexer_keyword* keywords, int nkeywords);
  9.  
  10. char BrLexerCommentSet(br_lexer* l, char eol_comment);
  11.  
  12. br_lexer_error_cbfn* BrLexerErrorSet(br_lexer* l, br_lexer_error_cbfn* error);
  13.  
  14. void BrLexerFree(br_lexer* l);
  15.  
  16. void fileGetchar(br_lexer_source* source);
  17.  
  18. br_error BrLexerPushFile(br_lexer* l, char* file);
  19.  
  20. void stringGetchar(br_lexer_source* source);
  21.  
  22. br_error BrLexerPushString(br_lexer* l, char* string, char* name);
  23.  
  24. br_lexer_source* BrLexerPop(br_lexer* l);
  25.  
  26. void lexerAdvance(br_lexer* l);
  27.  
  28. void lexerAdvanceDump(br_lexer* l);
  29.  
  30. br_error BrLexerDumpSet(br_lexer* l, br_putline_cbfn* putline, void* putline_arg);
  31.  
  32. void BrLexerTokenError(br_lexer* l, br_lexer_token_id t);
  33.  
  34. void BrLexerPosition(br_lexer* l, char* buf, br_size_t buf_size);
  35.  
  36. br_fixed_ls BrParseFixed(br_lexer* l);
  37.  
  38. br_float BrParseFloat(br_lexer* l);
  39.  
  40. br_int_32 BrParseInteger(br_lexer* l);
  41.  
  42. br_int_32 BrParseVectorFixed(br_lexer* l, br_fixed_ls* v, br_int_32 max);
  43.  
  44. br_int_32 BrParseVectorFloat(br_lexer* l, br_float* v, br_int_32 max);
  45.  
  46. br_int_32 BrParseMatrixFixed(br_lexer* l, br_fixed_ls* m, br_int_32 width, br_int_32 max_h);
  47.  
  48. br_int_32 BrParseMatrixFloat(br_lexer* l, br_float* m, br_int_32 width, br_int_32 max_h);
  49.  
  50. #endif
  51.