diff options
Diffstat (limited to 'src/ast/expr.cpp')
-rw-r--r-- | src/ast/expr.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/ast/expr.cpp b/src/ast/expr.cpp index 5c9afa5d..3f2abd2b 100644 --- a/src/ast/expr.cpp +++ b/src/ast/expr.cpp @@ -325,6 +325,11 @@ NODE(ExprNode_Cast, { },{ return NEWNODE(ExprNode_Cast, m_value->clone(), TypeRef(m_type)); }) +NODE(ExprNode_TypeAnnotation, { + os << "(" << *m_value << ": " << m_type << ")"; +},{ + return NEWNODE(ExprNode_TypeAnnotation, m_value->clone(), TypeRef(m_type)); +}) NODE(ExprNode_BinOp, { os << "(" << *m_left << " "; @@ -511,6 +516,10 @@ NV(ExprNode_Cast, { visit(node.m_value); }) +NV(ExprNode_TypeAnnotation, +{ + visit(node.m_value); +}) NV(ExprNode_BinOp, { visit(node.m_left); |