mirror of
https://github.com/zeek/zeek.git
synced 2025-10-08 09:38:19 +00:00
various accessors used by ZAM compiler
This commit is contained in:
parent
f861a194f9
commit
f2f041b63b
5 changed files with 75 additions and 2 deletions
|
@ -55,6 +55,12 @@ const FieldLHSAssignExpr* Expr::AsFieldLHSAssignExpr() const
|
|||
return (const FieldLHSAssignExpr*) this;
|
||||
}
|
||||
|
||||
HasFieldExpr* Expr::AsHasFieldExpr()
|
||||
{
|
||||
CHECK_TAG(tag, EXPR_HAS_FIELD, "ExprVal::AsHasFieldExpr", expr_name)
|
||||
return (HasFieldExpr*) this;
|
||||
}
|
||||
|
||||
const HasFieldExpr* Expr::AsHasFieldExpr() const
|
||||
{
|
||||
CHECK_TAG(tag, EXPR_HAS_FIELD, "ExprVal::AsHasFieldExpr", expr_name)
|
||||
|
@ -73,12 +79,60 @@ const IsExpr* Expr::AsIsExpr() const
|
|||
return (const IsExpr*) this;
|
||||
}
|
||||
|
||||
CallExpr* Expr::AsCallExpr()
|
||||
{
|
||||
CHECK_TAG(tag, EXPR_CALL, "ExprVal::AsCallExpr", expr_name)
|
||||
return (CallExpr*) this;
|
||||
}
|
||||
|
||||
FieldAssignExpr* Expr::AsFieldAssignExpr()
|
||||
{
|
||||
CHECK_TAG(tag, EXPR_FIELD_ASSIGN, "ExprVal::AsFieldAssignExpr", expr_name)
|
||||
return (FieldAssignExpr*) this;
|
||||
}
|
||||
|
||||
const RecordCoerceExpr* Expr::AsRecordCoerceExpr() const
|
||||
{
|
||||
CHECK_TAG(tag, EXPR_RECORD_COERCE, "ExprVal::AsRecordCoerceExpr", expr_name)
|
||||
return (const RecordCoerceExpr*) this;
|
||||
}
|
||||
|
||||
const RecordConstructorExpr* Expr::AsRecordConstructorExpr() const
|
||||
{
|
||||
CHECK_TAG(tag, EXPR_RECORD_CONSTRUCTOR, "ExprVal::AsRecordConstructorExpr", expr_name)
|
||||
return (const RecordConstructorExpr*) this;
|
||||
}
|
||||
|
||||
const TableConstructorExpr* Expr::AsTableConstructorExpr() const
|
||||
{
|
||||
CHECK_TAG(tag, EXPR_TABLE_CONSTRUCTOR, "ExprVal::AsTableConstructorExpr", expr_name)
|
||||
return (const TableConstructorExpr*) this;
|
||||
}
|
||||
|
||||
const SetConstructorExpr* Expr::AsSetConstructorExpr() const
|
||||
{
|
||||
CHECK_TAG(tag, EXPR_SET_CONSTRUCTOR, "ExprVal::AsSetConstructorExpr", expr_name)
|
||||
return (const SetConstructorExpr*) this;
|
||||
}
|
||||
|
||||
RefExpr* Expr::AsRefExpr()
|
||||
{
|
||||
CHECK_TAG(tag, EXPR_REF, "ExprVal::AsRefExpr", expr_name)
|
||||
return (RefExpr*) this;
|
||||
}
|
||||
|
||||
const InlineExpr* Expr::AsInlineExpr() const
|
||||
{
|
||||
CHECK_TAG(tag, EXPR_INLINE, "ExprVal::AsInlineExpr", expr_name)
|
||||
return (const InlineExpr*) this;
|
||||
}
|
||||
|
||||
AnyIndexExpr* Expr::AsAnyIndexExpr()
|
||||
{
|
||||
CHECK_TAG(tag, EXPR_ANY_INDEX, "ExprVal::AsAnyIndexExpr", expr_name)
|
||||
return (AnyIndexExpr*) this;
|
||||
}
|
||||
|
||||
const AnyIndexExpr* Expr::AsAnyIndexExpr() const
|
||||
{
|
||||
CHECK_TAG(tag, EXPR_ANY_INDEX, "ExprVal::AsAnyIndexExpr", expr_name)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue