summaryrefslogtreecommitdiff
path: root/src/sys/include/os
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2025-10-01 19:51:26 -0400
committerIan Moffett <ian@osmora.org>2025-10-01 19:51:26 -0400
commit986a736de0418bf01f52f2e44fdf58f23f04e615 (patch)
tree2b462471f62c59f11299cacf4847ad4fc45845ef /src/sys/include/os
parentf927e045e37129cf1a57ad85c15a0b04093f3177 (diff)
np: parse: Create proc AST, handle end/begin, ...
This commit introduces AST object types and AST integer type definitions. We also now keep track of how deep we are in begin/end tags. - Introduce parsing for TT_BEGIN - Introduce parsing for TT_END Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'src/sys/include/os')
-rw-r--r--src/sys/include/os/np.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/sys/include/os/np.h b/src/sys/include/os/np.h
index c3921cb..9b04f0e 100644
--- a/src/sys/include/os/np.h
+++ b/src/sys/include/os/np.h
@@ -49,6 +49,8 @@
* @lex_st: Lexer state
* @ast_root: Parse tree
* @ccache: Character cache (temporary store for lexer)
+ * @in_func: Is set if we are inside a function
+ * @begin_depth: How deep in "begin" we are
*/
struct np_work {
char *source;
@@ -58,6 +60,8 @@ struct np_work {
struct ptrbox *work_mem;
struct ast_node *ast_root;
char ccache;
+ uint8_t in_func : 1;
+ uint8_t begin_depth;
};
/*