aboutsummaryrefslogtreecommitdiff
path: root/src/compiler/parser/parser.h
diff options
context:
space:
mode:
authorA404M <ahmadmahmoudiprogrammer@gmail.com>2024-09-19 04:22:05 +0330
committerA404M <ahmadmahmoudiprogrammer@gmail.com>2024-09-19 04:22:05 +0330
commita1283a31533c7728f073448cb8a20ea98c5cb40e (patch)
tree3c0f6afc933c6447aad523726b70fd49925f0f9a /src/compiler/parser/parser.h
parentb6c2872fd2b4441e4c98b365e7401c5848d58154 (diff)
cleaning up stuff
Diffstat (limited to 'src/compiler/parser/parser.h')
-rw-r--r--src/compiler/parser/parser.h24
1 files changed, 11 insertions, 13 deletions
diff --git a/src/compiler/parser/parser.h b/src/compiler/parser/parser.h
index 006fc59..efabc8c 100644
--- a/src/compiler/parser/parser.h
+++ b/src/compiler/parser/parser.h
@@ -16,14 +16,9 @@ extern const char *PARSED_TOKEN_STRINGS[];
typedef struct ParseOrder {
bool ltr;
size_t size;
- Token tokens[10]; // TODO: change this
+ Token tokens[10]; // TODO: change this
} ParseOrder;
-typedef struct ScopeMetadata {
- struct ParsedNode **operands;
- size_t operands_size;
-} ScopeMetadata;
-
typedef struct ParsedNode {
char const *strBegin;
char const *strEnd;
@@ -32,31 +27,34 @@ typedef struct ParsedNode {
struct ParsedNode *parent;
} ParsedNode;
+typedef struct ScopeMetadata {
+ struct ParsedNode **operands;
+ size_t operands_size;
+} ScopeMetadata;
typedef ParsedNode PrintMetadata;
typedef ParsedNode EOLMetadata;
extern ParsedNode *newParsedNode(char const *strBegin, char const *strEnd,
ParsedToken token, void *metadata,
ParsedNode *parent);
-extern void _printParsedNode(const ParsedNode *parsedNode,int indent);
+extern void _printParsedNode(const ParsedNode *parsedNode, int indent);
extern void printParsedNode(const ParsedNode *parsedNode);
-extern ParsedNode *getUntilCommonFather(ParsedNode *parsedNode,ParsedNode *parent);
+extern ParsedNode *getUntilCommonFather(ParsedNode *parsedNode,
+ ParsedNode *parent);
extern void deleteParsedNode(ParsedNode *parsedNode);
extern ParsedNode *parser(Nodes lexedNodes);
extern ScopeMetadata *parserScope(Node *nodesBegin, Node *nodesEnd,
- ParsedNode *parent);
+ ParsedNode *parent);
extern ParsedNode *parseNode(Node *nodesBegin, Node *nodesEnd, Node *node,
ParsedNode *parent);
extern ParsedNode *parserPrint(Node *nodesBegin, Node *nodesEnd, Node *node,
ParsedNode *parent);
-
extern ParsedNode *parseParenthesis(Node *nodesBegin, Node *nodesEnd,
Node *node, ParsedNode *parent);
-
extern ParsedNode *parseString(Node *node, ParsedNode *parent);
-
-extern ParsedNode *parseEOL(Node *nodesBegin, Node *nodesEnd,Node *node, ParsedNode *parent);
+extern ParsedNode *parseEOL(Node *nodesBegin, Node *nodesEnd, Node *node,
+ ParsedNode *parent);