summaryrefslogtreecommitdiff
path: root/parser/parser-globals.scm
diff options
context:
space:
mode:
Diffstat (limited to 'parser/parser-globals.scm')
-rw-r--r--parser/parser-globals.scm27
1 files changed, 27 insertions, 0 deletions
diff --git a/parser/parser-globals.scm b/parser/parser-globals.scm
new file mode 100644
index 0000000..528e582
--- /dev/null
+++ b/parser/parser-globals.scm
@@ -0,0 +1,27 @@
+;;; Global vars used in the parser
+
+(define *current-line* '()) ; current line the scanner is on
+(define *current-col* '()) ; current col; valid at start of line &
+ ; after where,let,of
+
+;;; Lexer
+
+(define *lex-literate?* '#f)
+(define *start-line* 0)
+(define *start-col* 0)
+(define *on-new-line?* '#t)
+(define *save-col?* '#f)
+(define *port* '())
+(define *tokens* '())
+(define *char* 0)
+(define *peek-char* 0)
+(define *at-eof/p?* 0)
+(define *at-eof?* 0)
+(define *on-new-line? '#f)
+
+;;; Parser
+
+(define *token-stream* '()) ; remaining tokens to be parsed
+(define *token* '()) ; current token type
+(define *token-args* '()) ; current token arguments
+(define *layout-stack* '()) ; columns at which layout is being done