@@ -417,6 +417,9 @@ final class ExprExtensionCall extends Expr {
417417
418418 @override
419419 int get hashCode => Object .hash (fn, args);
420+
421+ @override
422+ String toString () => '$fn (${args .join (', ' )})' ;
420423}
421424
422425final class ExprValue extends Expr {
@@ -454,6 +457,9 @@ final class ExprValue extends Expr {
454457
455458 @override
456459 int get hashCode => Object .hash (op, value);
460+
461+ @override
462+ String toString () => value.toString ();
457463}
458464
459465final class ExprVariable extends Expr {
@@ -496,6 +502,9 @@ final class ExprVariable extends Expr {
496502
497503 @override
498504 int get hashCode => Object .hash (op, variable);
505+
506+ @override
507+ String toString () => variable.name;
499508}
500509
501510final class ExprSlot extends Expr {
@@ -537,6 +546,9 @@ final class ExprSlot extends Expr {
537546
538547 @override
539548 int get hashCode => Object .hash (op, slotId);
549+
550+ @override
551+ String toString () => slotId.toString ();
540552}
541553
542554final class ExprUnknown extends Expr {
@@ -580,6 +592,9 @@ final class ExprUnknown extends Expr {
580592
581593 @override
582594 int get hashCode => Object .hash (op, name);
595+
596+ @override
597+ String toString () => 'Unknown($name )' ;
583598}
584599
585600final class ExprNot extends Expr {
@@ -625,6 +640,9 @@ final class ExprNot extends Expr {
625640
626641 @override
627642 int get hashCode => Object .hash (op, arg);
643+
644+ @override
645+ String toString () => '!$arg ' ;
628646}
629647
630648final class ExprNegate extends Expr {
@@ -670,6 +688,9 @@ final class ExprNegate extends Expr {
670688
671689 @override
672690 int get hashCode => Object .hash (op, arg);
691+
692+ @override
693+ String toString () => '-$arg ' ;
673694}
674695
675696sealed class CedarBinaryExpr extends Expr {
@@ -737,6 +758,9 @@ final class ExprEquals extends CedarBinaryExpr {
737758 @override
738759 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
739760 visitor.visitEquals (this , arg);
761+
762+ @override
763+ String toString () => '($left == $right )' ;
740764}
741765
742766final class ExprNotEquals extends CedarBinaryExpr {
@@ -776,6 +800,9 @@ final class ExprNotEquals extends CedarBinaryExpr {
776800 @override
777801 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
778802 visitor.visitNotEquals (this , arg);
803+
804+ @override
805+ String toString () => '($left != $right )' ;
779806}
780807
781808final class ExprIn extends CedarBinaryExpr {
@@ -815,6 +842,9 @@ final class ExprIn extends CedarBinaryExpr {
815842 @override
816843 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
817844 visitor.visitIn (this , arg);
845+
846+ @override
847+ String toString () => '($left in $right )' ;
818848}
819849
820850final class ExprLessThan extends CedarBinaryExpr {
@@ -854,6 +884,9 @@ final class ExprLessThan extends CedarBinaryExpr {
854884 @override
855885 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
856886 visitor.visitLessThan (this , arg);
887+
888+ @override
889+ String toString () => '($left < $right )' ;
857890}
858891
859892final class ExprLessThanOrEquals extends CedarBinaryExpr {
@@ -893,6 +926,9 @@ final class ExprLessThanOrEquals extends CedarBinaryExpr {
893926 @override
894927 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
895928 visitor.visitLessThanOrEquals (this , arg);
929+
930+ @override
931+ String toString () => '($left <= $right )' ;
896932}
897933
898934final class ExprGreaterThan extends CedarBinaryExpr {
@@ -932,6 +968,9 @@ final class ExprGreaterThan extends CedarBinaryExpr {
932968 @override
933969 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
934970 visitor.visitGreaterThan (this , arg);
971+
972+ @override
973+ String toString () => '($left > $right )' ;
935974}
936975
937976final class ExprGreaterThanOrEquals extends CedarBinaryExpr {
@@ -971,6 +1010,9 @@ final class ExprGreaterThanOrEquals extends CedarBinaryExpr {
9711010 @override
9721011 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
9731012 visitor.visitGreaterThanOrEquals (this , arg);
1013+
1014+ @override
1015+ String toString () => '($left >= $right )' ;
9741016}
9751017
9761018final class ExprAnd extends CedarBinaryExpr {
@@ -1010,6 +1052,9 @@ final class ExprAnd extends CedarBinaryExpr {
10101052 @override
10111053 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
10121054 visitor.visitAnd (this , arg);
1055+
1056+ @override
1057+ String toString () => '($left && $right )' ;
10131058}
10141059
10151060final class ExprOr extends CedarBinaryExpr {
@@ -1049,6 +1094,9 @@ final class ExprOr extends CedarBinaryExpr {
10491094 @override
10501095 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
10511096 visitor.visitOr (this , arg);
1097+
1098+ @override
1099+ String toString () => '($left || $right )' ;
10521100}
10531101
10541102final class ExprAdd extends CedarBinaryExpr {
@@ -1088,6 +1136,9 @@ final class ExprAdd extends CedarBinaryExpr {
10881136 @override
10891137 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
10901138 visitor.visitAdd (this , arg);
1139+
1140+ @override
1141+ String toString () => '($left + $right )' ;
10911142}
10921143
10931144final class ExprSubt extends CedarBinaryExpr {
@@ -1127,6 +1178,9 @@ final class ExprSubt extends CedarBinaryExpr {
11271178 @override
11281179 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
11291180 visitor.visitSubt (this , arg);
1181+
1182+ @override
1183+ String toString () => '($left - $right )' ;
11301184}
11311185
11321186final class ExprMult extends CedarBinaryExpr {
@@ -1166,6 +1220,9 @@ final class ExprMult extends CedarBinaryExpr {
11661220 @override
11671221 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
11681222 visitor.visitMult (this , arg);
1223+
1224+ @override
1225+ String toString () => '($left * $right )' ;
11691226}
11701227
11711228final class ExprContains extends CedarBinaryExpr {
@@ -1205,6 +1262,9 @@ final class ExprContains extends CedarBinaryExpr {
12051262 @override
12061263 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
12071264 visitor.visitContains (this , arg);
1265+
1266+ @override
1267+ String toString () => '($left contains $right )' ;
12081268}
12091269
12101270final class ExprContainsAll extends CedarBinaryExpr {
@@ -1244,6 +1304,9 @@ final class ExprContainsAll extends CedarBinaryExpr {
12441304 @override
12451305 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
12461306 visitor.visitContainsAll (this , arg);
1307+
1308+ @override
1309+ String toString () => '($left containsAll $right )' ;
12471310}
12481311
12491312final class ExprContainsAny extends CedarBinaryExpr {
@@ -1283,6 +1346,9 @@ final class ExprContainsAny extends CedarBinaryExpr {
12831346 @override
12841347 R acceptWithArg <R , A >(ExprVisitorWithArg <R , A > visitor, A arg) =>
12851348 visitor.visitContainsAny (this , arg);
1349+
1350+ @override
1351+ String toString () => '($left containsAny $right )' ;
12861352}
12871353
12881354sealed class CedarStringExpr extends Expr {
@@ -1349,6 +1415,9 @@ final class ExprGetAttribute extends CedarStringExpr {
13491415
13501416 @override
13511417 int get hashCode => Object .hash (op, left, attr);
1418+
1419+ @override
1420+ String toString () => '$left .$attr ' ;
13521421}
13531422
13541423final class ExprHasAttribute extends CedarStringExpr {
@@ -1408,6 +1477,9 @@ final class ExprHasAttribute extends CedarStringExpr {
14081477
14091478 @override
14101479 int get hashCode => Object .hash (op, left, attr);
1480+
1481+ @override
1482+ String toString () => '$left has $attr ' ;
14111483}
14121484
14131485final class ExprLike extends Expr {
@@ -1464,6 +1536,9 @@ final class ExprLike extends Expr {
14641536
14651537 @override
14661538 int get hashCode => Object .hash (op, left, pattern);
1539+
1540+ @override
1541+ String toString () => '$left like $pattern ' ;
14671542}
14681543
14691544final class ExprIs extends Expr {
@@ -1476,7 +1551,7 @@ final class ExprIs extends Expr {
14761551 factory ExprIs .fromJson (Map <String , Object ?> json) {
14771552 return ExprIs (
14781553 left: Expr .fromJson (json['left' ] as Map <String , Object ?>),
1479- entityType: ['entity_type' ] as String ,
1554+ entityType: json ['entity_type' ] as String ,
14801555 inExpr: json['in' ] != null
14811556 ? Expr .fromJson (json['in' ] as Map <String , Object ?>)
14821557 : null ,
@@ -1531,6 +1606,10 @@ final class ExprIs extends Expr {
15311606
15321607 @override
15331608 int get hashCode => Object .hash (op, left, entityType, inExpr);
1609+
1610+ @override
1611+ String toString () =>
1612+ '$left is $entityType ${inExpr != null ? ' in $inExpr ' : '' }' ;
15341613}
15351614
15361615final class ExprIfThenElse extends Expr {
@@ -1596,6 +1675,9 @@ final class ExprIfThenElse extends Expr {
15961675
15971676 @override
15981677 int get hashCode => Object .hash (op, cond, then, otherwise);
1678+
1679+ @override
1680+ String toString () => 'if $cond then $then else $otherwise ' ;
15991681}
16001682
16011683final class ExprSet extends Expr {
@@ -1647,6 +1729,9 @@ final class ExprSet extends Expr {
16471729
16481730 @override
16491731 int get hashCode => Object .hashAllUnordered (expressions);
1732+
1733+ @override
1734+ String toString () => '{${expressions .join (', ' )}}' ;
16501735}
16511736
16521737final class ExprRecord extends Expr {
@@ -1701,4 +1786,8 @@ final class ExprRecord extends Expr {
17011786
17021787 @override
17031788 int get hashCode => const MapEquality ().hash (attributes);
1789+
1790+ @override
1791+ String toString () =>
1792+ '{${attributes .entries .map ((e ) => '${e .key }: ${e .value }' ).join (', ' )}}' ;
17041793}
0 commit comments