AST* var_value(AST* var);
bool var_const(AST* var);
+/* Package Definition
+ *****************************************************************************/
+typedef struct Require {
+ struct Require* next;
+ char* path;
+ char* alias;
+} Require;
+
+typedef struct Provide {
+ struct Provide* next;
+ char* name;
+} Provide;
+
+typedef struct File {
+ struct File* next;
+ char* name;
+ SymTable* syms;
+} File;
+
+typedef struct {
+ char* name;
+ SymTable* syms;
+ File* files;
+} Package;
+
+pkg_add_require(Package* p, char* req);
+pkg_add_provide(Package* p, char* exp);
+pkg_add_definition(Package* p, AST* ast);
+
/* Pretty Printing
*****************************************************************************/
void pprint_token_type(FILE* file, Tok* token);