edfb3e24a3
bshell: the front-end binary bshell.runtime: contains the parser, compiler, and classes needed to run bshell scripts bshell.core: contains the builtin commandlets and aliases
23 lines
506 B
C
23 lines
506 B
C
#ifndef BSHELL_PARSE_PARSE_H_
|
|
#define BSHELL_PARSE_PARSE_H_
|
|
|
|
#include <bshell/status.h>
|
|
|
|
struct bshell_lex_ctx;
|
|
struct bshell_ast_node;
|
|
|
|
struct bshell_parse_ctx {
|
|
struct bshell_lex_ctx *p_src;
|
|
enum bshell_status p_status;
|
|
};
|
|
|
|
extern enum bshell_status bshell_parse_ctx_init(
|
|
struct bshell_parse_ctx *ctx,
|
|
struct bshell_lex_ctx *src);
|
|
extern void bshell_parse_ctx_cleanup(struct bshell_parse_ctx *ctx);
|
|
|
|
extern struct bshell_ast_node *bshell_parse_ctx_read_node(
|
|
struct bshell_parse_ctx *ctx);
|
|
|
|
#endif
|