FileTokens.h 562 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #ifndef FILE_READER_H
  2. #define FILE_READER_H
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6. #include "Error.h"
  7. typedef enum {
  8. FT_PATH,
  9. FT_END_PATH,
  10. FT_NEWLINE,
  11. FT_LITERAL,
  12. FT_SINGLE,
  13. FT_SPACE
  14. } FileTokenType;
  15. typedef struct {
  16. FileTokenType type;
  17. int single;
  18. char* literal;
  19. } FileToken;
  20. typedef struct {
  21. FileToken* tokens;
  22. int capacity;
  23. int length;
  24. } FileTokens;
  25. void ftInit(const char* path, FileTokens* ft, Error* e);
  26. void ftDelete(FileTokens* ft);
  27. void ftPrint(FileTokens* ft);
  28. #ifdef __cplusplus
  29. }
  30. #endif
  31. #endif