From 3a37ed9f3c038d0add5c0a277244807ecaae2167 Mon Sep 17 00:00:00 2001 From: Valerie Wolfe Date: Wed, 3 Apr 2024 14:47:32 -0400 Subject: [PATCH] Add Lexer API --- Lexer-API.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 Lexer-API.md diff --git a/Lexer-API.md b/Lexer-API.md new file mode 100644 index 0000000..8a80805 --- /dev/null +++ b/Lexer-API.md @@ -0,0 +1,27 @@ +The `interpret` helper object exposes the Lexing and Parsing API. + +## Methods + +### `interpret.first(input: str)` + +Peeks the first token in the input string. + +Returns: `Token` + +### `interpret.input(prompt: str)` + +An `input(prompt: str)` wrapper that tokenizes the user input. + +Returns: `TokenSet` + +### `interpret.parse_roll(input: str)` + +Parses `input` using the default roll expression parser. + +Returns: `int` + +### `interpret.tokenize(input: str)`: + +Tokenizes a string. + +Returns: `TokenSet`