summaryrefslogtreecommitdiff
path: root/defs.h
diff options
context:
space:
mode:
Diffstat (limited to 'defs.h')
-rw-r--r--defs.h75
1 files changed, 0 insertions, 75 deletions
diff --git a/defs.h b/defs.h
deleted file mode 100644
index c3bbd4b..0000000
--- a/defs.h
+++ /dev/null
@@ -1,75 +0,0 @@
-#pragma once
-
-#include "utils.h"
-
-
-typedef struct Region Region;
-
-
-// Lexing stage
-typedef enum {
- UN_Q,
- SINGLE_Q,
- DOUBLE_Q,
-} QuotationMode;
-
-typedef enum {
- LITERAL,
- REGION_EXP,
- VAR_EXP, // TODO: Later include other exps
-} ChunkKind;
-
-typedef struct {
- ChunkKind kind;
- QuotationMode qmode;
- union {
- char* literal_str;
- Region* reg_ptr;
- char* varname;
- } as;
-} Chunk;
-DECLARE_MAYBE(Chunk, MaybeChunk);
-DECLARE_VEC(Chunk*, Word)
-
-typedef enum {
- TOK_WORD,
- TOK_SPECIAL,
- TOK_PROCSUB_IN,
- TOK_PROCSUB_OUT,
-} TokenKind;
-
-typedef enum {
- PIPE,
- WRITE_REDIR_TRUNC,
- WRITE_REDIR_APPEND,
- READ_REDIR,
- EOL,
-} SpecialToken;
-DECLARE_MAYBE(SpecialToken, MaybeSpecialToken)
-
-typedef struct {
- TokenKind kind;
-
- union {
- Word word;
- SpecialToken spec;
- Region* procsub_region;
- } as;
-} Token;
-
-
-DECLARE_VEC(Token*, TokenPtrVec)
-
-
-typedef enum {
- CMDS,
- ARITHM,
-} RegionMode;
-
-struct Region {
- RegionMode mode;
- TokenPtrVec tokens;
-};
-DECLARE_VEC(Region, RegionVec)
-
-