Fixed some things.

This commit is contained in:
Jacob Signorovitch 2024-10-02 21:06:54 -04:00
parent aae8402403
commit 6f283c1d12
5 changed files with 12 additions and 44 deletions

View File

@ -8,20 +8,20 @@
// What the lexer is currently looking at.
typedef enum {
LEXER_STATE_CONFUSED, // Can't decide what it's looking at (also initial
// state).
LEXER_STATE_NUM, // Looking at a number.
LEXER_STATE_CALL, // Looking at a call.
LEXER_STATE_CONFUSED, // Can't decide what it's looking at (also initial
// state).
LEXER_STATE_NUM, // Looking at a number.
LEXER_STATE_CALL, // Looking at a call.
} LexerState;
// Lexer: converts text to tokens.
typedef struct {
char* src; // The source text.
size_t srcl; // The number of source chars.
char* cchar; // The current character.
Token** tokens; // The tokens produced.
size_t ntokens; // The number of tokens.
LexerState state; // What the lexxer is looking at.
char* src; // The source text.
size_t srcl; // The number of source chars.
char* cchar; // The current character.
Token** tokens; // The tokens produced.
size_t ntokens; // The number of tokens.
LexerState state; // What the lexxer is looking at.
} Lexer;
// Create a lexer.

View File

@ -10,21 +10,4 @@
// - Expression 1
// - Expression 2
typedef enum OpType {
OPTYPE_PLUS,
OPTYPE_MINUS
} optype_t;
typedef union Exp {
typedef struct Op {
optype_t type;
Exp* exp1;
Exp* exp2;
} op_t;
int n;
} exp_t;
#endif

View File

@ -1,12 +0,0 @@
#ifndef UTIL_H
#define UTIL_H
// Utilies.
#include <stdlib.h>
#include <stdio.h>
// Exit with an error. Returns int for ease of use, but should be treated as void.
int die(char* msg);
#endif

View File

@ -1,6 +1,3 @@
#include "include/util.h"
int is_even(int n) {
return !(n%2);
}
int is_even(int n) { return !(n % 2); }