accessors for additional Expr subclasses

This commit is contained in:
Vern Paxson 2021-02-27 10:48:16 -08:00
parent a912f6dd9a
commit 2b0a1bd2e9
2 changed files with 19 additions and 0 deletions

View file

@ -67,12 +67,24 @@ const AddToExpr* Expr::AsAddToExpr() const
return (const AddToExpr*) this;
}
const IsExpr* Expr::AsIsExpr() const
{
CHECK_TAG(tag, EXPR_IS, "ExprVal::AsIsExpr", expr_name)
return (const IsExpr*) this;
}
const InlineExpr* Expr::AsInlineExpr() const
{
CHECK_TAG(tag, EXPR_INLINE, "ExprVal::AsInlineExpr", expr_name)
return (const InlineExpr*) this;
}
const AnyIndexExpr* Expr::AsAnyIndexExpr() const
{
CHECK_TAG(tag, EXPR_ANY_INDEX, "ExprVal::AsAnyIndexExpr", expr_name)
return (const AnyIndexExpr*) this;
}
ExprPtr Expr::GetOp1() const { return nullptr; }
ExprPtr Expr::GetOp2() const { return nullptr; }
ExprPtr Expr::GetOp3() const { return nullptr; }