summaryrefslogtreecommitdiff
path: root/src/ast/expr.hpp
diff options
context:
space:
mode:
authorJohn Hodge <tpg@mutabah.net>2015-03-17 11:52:35 +0800
committerJohn Hodge <tpg@mutabah.net>2015-03-17 11:52:35 +0800
commit6c571b2d3f99f5e209986dc00710d3fb86caafad (patch)
tree6798d420f469432d0c722ca268592070252fa5c9 /src/ast/expr.hpp
parent6b506092f331a26328a45c00565336ac810b7559 (diff)
downloadmrust-6c571b2d3f99f5e209986dc00710d3fb86caafad.tar.gz
Replace Enum variant inner type
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);