mirror of
https://github.com/zeek/zeek.git
synced 2025-10-10 10:38:20 +00:00
Expr: remove unused default constructors and friend
declarations
This commit is contained in:
parent
138868747c
commit
3bc33fe7f6
1 changed files with 0 additions and 151 deletions
151
src/Expr.h
151
src/Expr.h
|
@ -245,9 +245,6 @@ public:
|
||||||
TraversalCode Traverse(TraversalCallback* cb) const override;
|
TraversalCode Traverse(TraversalCallback* cb) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
NameExpr() { id = 0; }
|
|
||||||
|
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
|
|
||||||
ID* id;
|
ID* id;
|
||||||
|
@ -266,9 +263,6 @@ public:
|
||||||
TraversalCode Traverse(TraversalCallback* cb) const override;
|
TraversalCode Traverse(TraversalCallback* cb) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
ConstExpr() { val = 0; }
|
|
||||||
|
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
Val* val;
|
Val* val;
|
||||||
};
|
};
|
||||||
|
@ -287,9 +281,6 @@ public:
|
||||||
TraversalCode Traverse(TraversalCallback* cb) const override;
|
TraversalCode Traverse(TraversalCallback* cb) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
UnaryExpr() { op = 0; }
|
|
||||||
|
|
||||||
UnaryExpr(BroExprTag arg_tag, Expr* arg_op);
|
UnaryExpr(BroExprTag arg_tag, Expr* arg_op);
|
||||||
~UnaryExpr() override;
|
~UnaryExpr() override;
|
||||||
|
|
||||||
|
@ -316,9 +307,6 @@ public:
|
||||||
TraversalCode Traverse(TraversalCallback* cb) const override;
|
TraversalCode Traverse(TraversalCallback* cb) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
BinaryExpr() { op1 = op2 = 0; }
|
|
||||||
|
|
||||||
BinaryExpr(BroExprTag arg_tag, Expr* arg_op1, Expr* arg_op2)
|
BinaryExpr(BroExprTag arg_tag, Expr* arg_op1, Expr* arg_op2)
|
||||||
: Expr(arg_tag), op1(arg_op1), op2(arg_op2)
|
: Expr(arg_tag), op1(arg_op1), op2(arg_op2)
|
||||||
{
|
{
|
||||||
|
@ -369,9 +357,6 @@ public:
|
||||||
Val* Eval(Frame* f) const override;
|
Val* Eval(Frame* f) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
CloneExpr() { }
|
|
||||||
|
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -382,10 +367,6 @@ public:
|
||||||
Val* Eval(Frame* f) const override;
|
Val* Eval(Frame* f) const override;
|
||||||
Val* DoSingleEval(Frame* f, Val* v) const;
|
Val* DoSingleEval(Frame* f, Val* v) const;
|
||||||
int IsPure() const override;
|
int IsPure() const override;
|
||||||
|
|
||||||
protected:
|
|
||||||
friend class Expr;
|
|
||||||
IncrExpr() { }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class ComplementExpr : public UnaryExpr {
|
class ComplementExpr : public UnaryExpr {
|
||||||
|
@ -393,9 +374,6 @@ public:
|
||||||
explicit ComplementExpr(Expr* op);
|
explicit ComplementExpr(Expr* op);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
ComplementExpr() { }
|
|
||||||
|
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -404,9 +382,6 @@ public:
|
||||||
explicit NotExpr(Expr* op);
|
explicit NotExpr(Expr* op);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
NotExpr() { }
|
|
||||||
|
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -415,9 +390,6 @@ public:
|
||||||
explicit PosExpr(Expr* op);
|
explicit PosExpr(Expr* op);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
PosExpr() { }
|
|
||||||
|
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -426,9 +398,6 @@ public:
|
||||||
explicit NegExpr(Expr* op);
|
explicit NegExpr(Expr* op);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
NegExpr() { }
|
|
||||||
|
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -438,9 +407,6 @@ public:
|
||||||
Val* Eval(Frame* f) const override;
|
Val* Eval(Frame* f) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
SizeExpr() { }
|
|
||||||
|
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -448,49 +414,29 @@ class AddExpr : public BinaryExpr {
|
||||||
public:
|
public:
|
||||||
AddExpr(Expr* op1, Expr* op2);
|
AddExpr(Expr* op1, Expr* op2);
|
||||||
void Canonicize() override;
|
void Canonicize() override;
|
||||||
|
|
||||||
protected:
|
|
||||||
friend class Expr;
|
|
||||||
AddExpr() { }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class AddToExpr : public BinaryExpr {
|
class AddToExpr : public BinaryExpr {
|
||||||
public:
|
public:
|
||||||
AddToExpr(Expr* op1, Expr* op2);
|
AddToExpr(Expr* op1, Expr* op2);
|
||||||
Val* Eval(Frame* f) const override;
|
Val* Eval(Frame* f) const override;
|
||||||
|
|
||||||
protected:
|
|
||||||
friend class Expr;
|
|
||||||
AddToExpr() { }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class RemoveFromExpr : public BinaryExpr {
|
class RemoveFromExpr : public BinaryExpr {
|
||||||
public:
|
public:
|
||||||
RemoveFromExpr(Expr* op1, Expr* op2);
|
RemoveFromExpr(Expr* op1, Expr* op2);
|
||||||
Val* Eval(Frame* f) const override;
|
Val* Eval(Frame* f) const override;
|
||||||
|
|
||||||
protected:
|
|
||||||
friend class Expr;
|
|
||||||
RemoveFromExpr() { }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class SubExpr : public BinaryExpr {
|
class SubExpr : public BinaryExpr {
|
||||||
public:
|
public:
|
||||||
SubExpr(Expr* op1, Expr* op2);
|
SubExpr(Expr* op1, Expr* op2);
|
||||||
|
|
||||||
protected:
|
|
||||||
friend class Expr;
|
|
||||||
SubExpr() { }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class TimesExpr : public BinaryExpr {
|
class TimesExpr : public BinaryExpr {
|
||||||
public:
|
public:
|
||||||
TimesExpr(Expr* op1, Expr* op2);
|
TimesExpr(Expr* op1, Expr* op2);
|
||||||
void Canonicize() override;
|
void Canonicize() override;
|
||||||
|
|
||||||
protected:
|
|
||||||
friend class Expr;
|
|
||||||
TimesExpr() { }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class DivideExpr : public BinaryExpr {
|
class DivideExpr : public BinaryExpr {
|
||||||
|
@ -498,19 +444,12 @@ public:
|
||||||
DivideExpr(Expr* op1, Expr* op2);
|
DivideExpr(Expr* op1, Expr* op2);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
DivideExpr() { }
|
|
||||||
|
|
||||||
Val* AddrFold(Val* v1, Val* v2) const override;
|
Val* AddrFold(Val* v1, Val* v2) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
class ModExpr : public BinaryExpr {
|
class ModExpr : public BinaryExpr {
|
||||||
public:
|
public:
|
||||||
ModExpr(Expr* op1, Expr* op2);
|
ModExpr(Expr* op1, Expr* op2);
|
||||||
|
|
||||||
protected:
|
|
||||||
friend class Expr;
|
|
||||||
ModExpr() { }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class BoolExpr : public BinaryExpr {
|
class BoolExpr : public BinaryExpr {
|
||||||
|
@ -519,19 +458,11 @@ public:
|
||||||
|
|
||||||
Val* Eval(Frame* f) const override;
|
Val* Eval(Frame* f) const override;
|
||||||
Val* DoSingleEval(Frame* f, Val* v1, Expr* op2) const;
|
Val* DoSingleEval(Frame* f, Val* v1, Expr* op2) const;
|
||||||
|
|
||||||
protected:
|
|
||||||
friend class Expr;
|
|
||||||
BoolExpr() { }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class BitExpr : public BinaryExpr {
|
class BitExpr : public BinaryExpr {
|
||||||
public:
|
public:
|
||||||
BitExpr(BroExprTag tag, Expr* op1, Expr* op2);
|
BitExpr(BroExprTag tag, Expr* op1, Expr* op2);
|
||||||
|
|
||||||
protected:
|
|
||||||
friend class Expr;
|
|
||||||
BitExpr() { }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class EqExpr : public BinaryExpr {
|
class EqExpr : public BinaryExpr {
|
||||||
|
@ -540,9 +471,6 @@ public:
|
||||||
void Canonicize() override;
|
void Canonicize() override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
EqExpr() { }
|
|
||||||
|
|
||||||
Val* Fold(Val* v1, Val* v2) const override;
|
Val* Fold(Val* v1, Val* v2) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -550,10 +478,6 @@ class RelExpr : public BinaryExpr {
|
||||||
public:
|
public:
|
||||||
RelExpr(BroExprTag tag, Expr* op1, Expr* op2);
|
RelExpr(BroExprTag tag, Expr* op1, Expr* op2);
|
||||||
void Canonicize() override;
|
void Canonicize() override;
|
||||||
|
|
||||||
protected:
|
|
||||||
friend class Expr;
|
|
||||||
RelExpr() { }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class CondExpr : public Expr {
|
class CondExpr : public Expr {
|
||||||
|
@ -571,9 +495,6 @@ public:
|
||||||
TraversalCode Traverse(TraversalCallback* cb) const override;
|
TraversalCode Traverse(TraversalCallback* cb) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
CondExpr() { op1 = op2 = op3 = 0; }
|
|
||||||
|
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
|
|
||||||
Expr* op1;
|
Expr* op1;
|
||||||
|
@ -587,10 +508,6 @@ public:
|
||||||
|
|
||||||
void Assign(Frame* f, Val* v) override;
|
void Assign(Frame* f, Val* v) override;
|
||||||
Expr* MakeLvalue() override;
|
Expr* MakeLvalue() override;
|
||||||
|
|
||||||
protected:
|
|
||||||
friend class Expr;
|
|
||||||
RefExpr() { }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class AssignExpr : public BinaryExpr {
|
class AssignExpr : public BinaryExpr {
|
||||||
|
@ -608,9 +525,6 @@ public:
|
||||||
int IsPure() const override;
|
int IsPure() const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
AssignExpr() { }
|
|
||||||
|
|
||||||
bool TypeCheck(attr_list* attrs = 0);
|
bool TypeCheck(attr_list* attrs = 0);
|
||||||
bool TypeCheckArithmetics(TypeTag bt1, TypeTag bt2);
|
bool TypeCheckArithmetics(TypeTag bt1, TypeTag bt2);
|
||||||
|
|
||||||
|
@ -622,10 +536,6 @@ class IndexSliceAssignExpr : public AssignExpr {
|
||||||
public:
|
public:
|
||||||
IndexSliceAssignExpr(Expr* op1, Expr* op2, int is_init);
|
IndexSliceAssignExpr(Expr* op1, Expr* op2, int is_init);
|
||||||
Val* Eval(Frame* f) const override;
|
Val* Eval(Frame* f) const override;
|
||||||
|
|
||||||
protected:
|
|
||||||
friend class Expr;
|
|
||||||
IndexSliceAssignExpr() {}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class IndexExpr : public BinaryExpr {
|
class IndexExpr : public BinaryExpr {
|
||||||
|
@ -650,9 +560,6 @@ public:
|
||||||
bool IsSlice() const { return is_slice; }
|
bool IsSlice() const { return is_slice; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
IndexExpr() { }
|
|
||||||
|
|
||||||
Val* Fold(Val* v1, Val* v2) const override;
|
Val* Fold(Val* v1, Val* v2) const override;
|
||||||
|
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
|
@ -676,9 +583,6 @@ public:
|
||||||
Expr* MakeLvalue() override;
|
Expr* MakeLvalue() override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
FieldExpr() { field_name = 0; td = 0; }
|
|
||||||
|
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
|
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
|
@ -698,9 +602,6 @@ public:
|
||||||
const char* FieldName() const { return field_name; }
|
const char* FieldName() const { return field_name; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
HasFieldExpr() { field_name = 0; }
|
|
||||||
|
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
|
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
|
@ -715,9 +616,6 @@ public:
|
||||||
~RecordConstructorExpr() override;
|
~RecordConstructorExpr() override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
RecordConstructorExpr() { }
|
|
||||||
|
|
||||||
Val* InitVal(const BroType* t, Val* aggr) const override;
|
Val* InitVal(const BroType* t, Val* aggr) const override;
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
|
|
||||||
|
@ -735,9 +633,6 @@ public:
|
||||||
Val* Eval(Frame* f) const override;
|
Val* Eval(Frame* f) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
TableConstructorExpr() { }
|
|
||||||
|
|
||||||
Val* InitVal(const BroType* t, Val* aggr) const override;
|
Val* InitVal(const BroType* t, Val* aggr) const override;
|
||||||
|
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
|
@ -756,9 +651,6 @@ public:
|
||||||
Val* Eval(Frame* f) const override;
|
Val* Eval(Frame* f) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
SetConstructorExpr() { }
|
|
||||||
|
|
||||||
Val* InitVal(const BroType* t, Val* aggr) const override;
|
Val* InitVal(const BroType* t, Val* aggr) const override;
|
||||||
|
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
|
@ -773,9 +665,6 @@ public:
|
||||||
Val* Eval(Frame* f) const override;
|
Val* Eval(Frame* f) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
VectorConstructorExpr() { }
|
|
||||||
|
|
||||||
Val* InitVal(const BroType* t, Val* aggr) const override;
|
Val* InitVal(const BroType* t, Val* aggr) const override;
|
||||||
|
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
|
@ -791,9 +680,6 @@ public:
|
||||||
int IsRecordElement(TypeDecl* td) const override;
|
int IsRecordElement(TypeDecl* td) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
FieldAssignExpr() { }
|
|
||||||
|
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
|
|
||||||
string field_name;
|
string field_name;
|
||||||
|
@ -804,9 +690,6 @@ public:
|
||||||
ArithCoerceExpr(Expr* op, TypeTag t);
|
ArithCoerceExpr(Expr* op, TypeTag t);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
ArithCoerceExpr() { }
|
|
||||||
|
|
||||||
Val* FoldSingleVal(Val* v, InternalTypeTag t) const;
|
Val* FoldSingleVal(Val* v, InternalTypeTag t) const;
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
};
|
};
|
||||||
|
@ -817,9 +700,6 @@ public:
|
||||||
~RecordCoerceExpr() override;
|
~RecordCoerceExpr() override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
RecordCoerceExpr() { map = 0; }
|
|
||||||
|
|
||||||
Val* InitVal(const BroType* t, Val* aggr) const override;
|
Val* InitVal(const BroType* t, Val* aggr) const override;
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
|
|
||||||
|
@ -835,9 +715,6 @@ public:
|
||||||
~TableCoerceExpr() override;
|
~TableCoerceExpr() override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
TableCoerceExpr() { }
|
|
||||||
|
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -847,9 +724,6 @@ public:
|
||||||
~VectorCoerceExpr() override;
|
~VectorCoerceExpr() override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
VectorCoerceExpr() { }
|
|
||||||
|
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -860,9 +734,6 @@ public:
|
||||||
explicit FlattenExpr(Expr* op);
|
explicit FlattenExpr(Expr* op);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
FlattenExpr() { }
|
|
||||||
|
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
|
|
||||||
int num_fields;
|
int num_fields;
|
||||||
|
@ -897,9 +768,6 @@ public:
|
||||||
TraversalCode Traverse(TraversalCallback* cb) const override;
|
TraversalCode Traverse(TraversalCallback* cb) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
ScheduleExpr() { when = 0; event = 0; }
|
|
||||||
|
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
|
|
||||||
Expr* when;
|
Expr* when;
|
||||||
|
@ -911,9 +779,6 @@ public:
|
||||||
InExpr(Expr* op1, Expr* op2);
|
InExpr(Expr* op1, Expr* op2);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
InExpr() { }
|
|
||||||
|
|
||||||
Val* Fold(Val* v1, Val* v2) const override;
|
Val* Fold(Val* v1, Val* v2) const override;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -933,9 +798,6 @@ public:
|
||||||
TraversalCode Traverse(TraversalCallback* cb) const override;
|
TraversalCode Traverse(TraversalCallback* cb) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
CallExpr() { func = 0; args = 0; }
|
|
||||||
|
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
|
|
||||||
Expr* func;
|
Expr* func;
|
||||||
|
@ -980,9 +842,6 @@ public:
|
||||||
TraversalCode Traverse(TraversalCallback* cb) const override;
|
TraversalCode Traverse(TraversalCallback* cb) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
EventExpr() { args = 0; }
|
|
||||||
|
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
|
|
||||||
string name;
|
string name;
|
||||||
|
@ -1028,10 +887,6 @@ protected:
|
||||||
class RecordAssignExpr : public ListExpr {
|
class RecordAssignExpr : public ListExpr {
|
||||||
public:
|
public:
|
||||||
RecordAssignExpr(Expr* record, Expr* init_list, int is_init);
|
RecordAssignExpr(Expr* record, Expr* init_list, int is_init);
|
||||||
|
|
||||||
protected:
|
|
||||||
friend class Expr;
|
|
||||||
RecordAssignExpr() { }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class CastExpr : public UnaryExpr {
|
class CastExpr : public UnaryExpr {
|
||||||
|
@ -1039,9 +894,6 @@ public:
|
||||||
CastExpr(Expr* op, BroType* t);
|
CastExpr(Expr* op, BroType* t);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
CastExpr() { }
|
|
||||||
|
|
||||||
Val* Eval(Frame* f) const override;
|
Val* Eval(Frame* f) const override;
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
};
|
};
|
||||||
|
@ -1052,9 +904,6 @@ public:
|
||||||
virtual ~IsExpr();
|
virtual ~IsExpr();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
friend class Expr;
|
|
||||||
IsExpr() { }
|
|
||||||
|
|
||||||
Val* Fold(Val* v) const override;
|
Val* Fold(Val* v) const override;
|
||||||
void ExprDescribe(ODesc* d) const override;
|
void ExprDescribe(ODesc* d) const override;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue