summaryrefslogtreecommitdiff
path: root/src/ast/expr.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ast/expr.hpp')
-rw-r--r--src/ast/expr.hpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/ast/expr.hpp b/src/ast/expr.hpp
index 21f67c2f..e84e3df6 100644
--- a/src/ast/expr.hpp
+++ b/src/ast/expr.hpp
@@ -128,6 +128,18 @@ struct ExprNode_Import:
NODE_METHODS();
};
+struct ExprNode_Extern:
+ public ExprNode
+{
+ typedef ::std::vector< ::std::pair< ::std::string, AST::Function> > imports_t;
+ imports_t m_imports;
+
+ ExprNode_Extern();
+ ExprNode_Extern(imports_t imports);
+ // - Non-local because AST::Function
+
+ NODE_METHODS();
+};
struct ExprNode_LetBinding:
public ExprNode
{
@@ -583,6 +595,7 @@ public:
NT(ExprNode_Flow);
NT(ExprNode_Const);
NT(ExprNode_Import);
+ NT(ExprNode_Extern);
NT(ExprNode_LetBinding);
NT(ExprNode_Assign);
NT(ExprNode_CallPath);
@@ -626,6 +639,7 @@ public:
NT(ExprNode_Flow);
NT(ExprNode_Const);
NT(ExprNode_Import);
+ NT(ExprNode_Extern);
NT(ExprNode_LetBinding);
NT(ExprNode_Assign);
NT(ExprNode_CallPath);