Skip to content

Commit

Permalink
Revert "extending NumericLiterals to support upper and lower loads"
Browse files Browse the repository at this point in the history
This reverts commit 21b7ffb.
  • Loading branch information
chelseakomlo committed Apr 25, 2016
1 parent 21b7ffb commit abb9721
Show file tree
Hide file tree
Showing 16 changed files with 198 additions and 212 deletions.
50 changes: 25 additions & 25 deletions checker/checker_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ var _ = Suite(&CheckerSuite{})

func (s *CheckerSuite) Test_checksNumber(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.NumericLiteral{Value: 42}},
tree.Rule{Name: "read", Body: tree.NumericLiteral{42}},
}}

val := EnsureValid(toCheck)
Expand All @@ -27,7 +27,7 @@ func (s *CheckerSuite) Test_checksNumber(c *C) {

func (s *CheckerSuite) Test_checksComparisonRight(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Left: tree.NumericLiteral{Value: 42}, Right: tree.BooleanLiteral{false}}},
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Left: tree.NumericLiteral{42}, Right: tree.BooleanLiteral{false}}},
}}

val := EnsureValid(toCheck)
Expand All @@ -38,7 +38,7 @@ func (s *CheckerSuite) Test_checksComparisonRight(c *C) {

func (s *CheckerSuite) Test_checksComparisonLeft(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Right: tree.NumericLiteral{Value: 42}, Left: tree.BooleanLiteral{false}}},
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Right: tree.NumericLiteral{42}, Left: tree.BooleanLiteral{false}}},
}}

val := EnsureValid(toCheck)
Expand All @@ -60,8 +60,8 @@ func (s *CheckerSuite) Test_checksSuccessfulSimpleCase(c *C) {
func (s *CheckerSuite) Test_checksComparisonInNumericContext(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL,
Left: tree.NumericLiteral{Value: 23},
Right: tree.Comparison{Op: tree.EQL, Right: tree.NumericLiteral{Value: 42}, Left: tree.NumericLiteral{Value: 15}}}},
Left: tree.NumericLiteral{23},
Right: tree.Comparison{Op: tree.EQL, Right: tree.NumericLiteral{42}, Left: tree.NumericLiteral{15}}}},
}}

val := EnsureValid(toCheck)
Expand All @@ -73,7 +73,7 @@ func (s *CheckerSuite) Test_checksComparisonInNumericContext(c *C) {
func (s *CheckerSuite) Test_checksAndAsArgument(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL,
Left: tree.NumericLiteral{Value: 23},
Left: tree.NumericLiteral{23},
Right: tree.And{Left: tree.BooleanLiteral{true}, Right: tree.BooleanLiteral{true}}}},
}}

Expand All @@ -86,7 +86,7 @@ func (s *CheckerSuite) Test_checksAndAsArgument(c *C) {
func (s *CheckerSuite) Test_checksAndArgumentLeft(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.And{
Left: tree.NumericLiteral{Value: 23},
Left: tree.NumericLiteral{23},
Right: tree.BooleanLiteral{true},
}}}}

Expand All @@ -99,7 +99,7 @@ func (s *CheckerSuite) Test_checksAndArgumentLeft(c *C) {
func (s *CheckerSuite) Test_checksAndArgumentRight(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.And{
Right: tree.NumericLiteral{Value: 23},
Right: tree.NumericLiteral{23},
Left: tree.BooleanLiteral{true},
}}}}

Expand All @@ -112,7 +112,7 @@ func (s *CheckerSuite) Test_checksAndArgumentRight(c *C) {
func (s *CheckerSuite) Test_checksOrAsArgument(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL,
Left: tree.NumericLiteral{Value: 23},
Left: tree.NumericLiteral{23},
Right: tree.Or{Left: tree.BooleanLiteral{true}, Right: tree.BooleanLiteral{true}}}},
}}

Expand All @@ -125,7 +125,7 @@ func (s *CheckerSuite) Test_checksOrAsArgument(c *C) {
func (s *CheckerSuite) Test_checksOrArgumentLeft(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Or{
Left: tree.NumericLiteral{Value: 23},
Left: tree.NumericLiteral{23},
Right: tree.BooleanLiteral{true},
}}}}

Expand All @@ -138,7 +138,7 @@ func (s *CheckerSuite) Test_checksOrArgumentLeft(c *C) {
func (s *CheckerSuite) Test_checksOrArgumentRight(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Or{
Right: tree.NumericLiteral{Value: 23},
Right: tree.NumericLiteral{23},
Left: tree.BooleanLiteral{true},
}}}}

Expand All @@ -159,7 +159,7 @@ func (s *CheckerSuite) Test_argumentShouldTypecheckAsNumeric(c *C) {

func (s *CheckerSuite) Test_checksSuccessfulSimpleCaseWithArg(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Right: tree.NumericLiteral{Value: 42}, Left: tree.Argument{Index: 0}}},
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Right: tree.NumericLiteral{42}, Left: tree.Argument{Index: 0}}},
}}

val := EnsureValid(toCheck)
Expand Down Expand Up @@ -191,7 +191,7 @@ func (s *CheckerSuite) Test_checksInvalidCall(c *C) {

func (s *CheckerSuite) Test_checksSuccessfulSimpleCaseWithBinNeg(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Right: tree.NumericLiteral{Value: 42}, Left: tree.BinaryNegation{tree.NumericLiteral{Value: 42}}}},
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Right: tree.NumericLiteral{42}, Left: tree.BinaryNegation{tree.NumericLiteral{42}}}},
}}

val := EnsureValid(toCheck)
Expand All @@ -201,7 +201,7 @@ func (s *CheckerSuite) Test_checksSuccessfulSimpleCaseWithBinNeg(c *C) {

func (s *CheckerSuite) Test_checksInvalidSimpleArgumentToBinNeg(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Right: tree.NumericLiteral{Value: 42}, Left: tree.BinaryNegation{tree.BooleanLiteral{false}}}},
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Right: tree.NumericLiteral{42}, Left: tree.BinaryNegation{tree.BooleanLiteral{false}}}},
}}

val := EnsureValid(toCheck)
Expand All @@ -212,7 +212,7 @@ func (s *CheckerSuite) Test_checksInvalidSimpleArgumentToBinNeg(c *C) {

func (s *CheckerSuite) Test_checksInvalidCaseWithBinNeg(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.BinaryNegation{tree.NumericLiteral{Value: 42}}},
tree.Rule{Name: "read", Body: tree.BinaryNegation{tree.NumericLiteral{42}}},
}}

val := EnsureValid(toCheck)
Expand All @@ -223,7 +223,7 @@ func (s *CheckerSuite) Test_checksInvalidCaseWithBinNeg(c *C) {

func (s *CheckerSuite) Test_checksArithRight(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Left: tree.Arithmetic{Op: tree.PLUS, Left: tree.NumericLiteral{Value: 42}, Right: tree.BooleanLiteral{false}}, Right: tree.NumericLiteral{Value: 42}}},
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Left: tree.Arithmetic{Op: tree.PLUS, Left: tree.NumericLiteral{42}, Right: tree.BooleanLiteral{false}}, Right: tree.NumericLiteral{42}}},
}}

val := EnsureValid(toCheck)
Expand All @@ -234,7 +234,7 @@ func (s *CheckerSuite) Test_checksArithRight(c *C) {

func (s *CheckerSuite) Test_checksArithLeft(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Left: tree.Arithmetic{Op: tree.PLUS, Right: tree.NumericLiteral{Value: 42}, Left: tree.BooleanLiteral{false}}, Right: tree.NumericLiteral{Value: 5233}}},
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Left: tree.Arithmetic{Op: tree.PLUS, Right: tree.NumericLiteral{42}, Left: tree.BooleanLiteral{false}}, Right: tree.NumericLiteral{5233}}},
}}

val := EnsureValid(toCheck)
Expand All @@ -246,8 +246,8 @@ func (s *CheckerSuite) Test_checksArithLeft(c *C) {
func (s *CheckerSuite) Test_checksArithAsArgument(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Arithmetic{Op: tree.PLUS,
Left: tree.NumericLiteral{Value: 23},
Right: tree.NumericLiteral{Value: 24},
Left: tree.NumericLiteral{23},
Right: tree.NumericLiteral{24},
}}}}

val := EnsureValid(toCheck)
Expand All @@ -267,7 +267,7 @@ func (s *CheckerSuite) Test_checksSuccess_booleanNegation(c *C) {

func (s *CheckerSuite) Test_checksInvalidPlacement_booleanNegation(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Right: tree.NumericLiteral{Value: 42}, Left: tree.Negation{tree.BooleanLiteral{false}}}},
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Right: tree.NumericLiteral{42}, Left: tree.Negation{tree.BooleanLiteral{false}}}},
}}

val := EnsureValid(toCheck)
Expand All @@ -278,7 +278,7 @@ func (s *CheckerSuite) Test_checksInvalidPlacement_booleanNegation(c *C) {

func (s *CheckerSuite) Test_checksInvalidArgument_booleanNegation(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Negation{tree.NumericLiteral{Value: 42}}},
tree.Rule{Name: "read", Body: tree.Negation{tree.NumericLiteral{42}}},
}}

val := EnsureValid(toCheck)
Expand All @@ -289,7 +289,7 @@ func (s *CheckerSuite) Test_checksInvalidArgument_booleanNegation(c *C) {

func (s *CheckerSuite) Test_inclusion_success(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Inclusion{Positive: true, Left: tree.NumericLiteral{Value: 42}, Rights: []tree.Numeric{tree.NumericLiteral{Value: 42}, tree.NumericLiteral{Value: 42}, tree.NumericLiteral{Value: 42}}}}}}
tree.Rule{Name: "read", Body: tree.Inclusion{Positive: true, Left: tree.NumericLiteral{42}, Rights: []tree.Numeric{tree.NumericLiteral{42}, tree.NumericLiteral{42}, tree.NumericLiteral{42}}}}}}

val := EnsureValid(toCheck)

Expand All @@ -298,7 +298,7 @@ func (s *CheckerSuite) Test_inclusion_success(c *C) {

func (s *CheckerSuite) Test_inclusion_badPlacement(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Left: tree.Inclusion{Positive: true, Left: tree.NumericLiteral{Value: 42}, Rights: []tree.Numeric{tree.NumericLiteral{Value: 42}, tree.NumericLiteral{Value: 42}, tree.NumericLiteral{Value: 42}}}, Right: tree.NumericLiteral{Value: 42}}}}}
tree.Rule{Name: "read", Body: tree.Comparison{Op: tree.EQL, Left: tree.Inclusion{Positive: true, Left: tree.NumericLiteral{42}, Rights: []tree.Numeric{tree.NumericLiteral{42}, tree.NumericLiteral{42}, tree.NumericLiteral{42}}}, Right: tree.NumericLiteral{42}}}}}

val := EnsureValid(toCheck)

Expand All @@ -308,7 +308,7 @@ func (s *CheckerSuite) Test_inclusion_badPlacement(c *C) {

func (s *CheckerSuite) Test_inclusion_badLeft(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Inclusion{Positive: true, Left: tree.BooleanLiteral{false}, Rights: []tree.Numeric{tree.NumericLiteral{Value: 42}, tree.NumericLiteral{Value: 42}, tree.NumericLiteral{Value: 42}}}}}}
tree.Rule{Name: "read", Body: tree.Inclusion{Positive: true, Left: tree.BooleanLiteral{false}, Rights: []tree.Numeric{tree.NumericLiteral{42}, tree.NumericLiteral{42}, tree.NumericLiteral{42}}}}}}

val := EnsureValid(toCheck)

Expand All @@ -318,7 +318,7 @@ func (s *CheckerSuite) Test_inclusion_badLeft(c *C) {

func (s *CheckerSuite) Test_inclusion_badRight(c *C) {
toCheck := tree.Policy{Rules: []tree.Rule{
tree.Rule{Name: "read", Body: tree.Inclusion{Positive: true, Left: tree.NumericLiteral{Value: 23}, Rights: []tree.Numeric{tree.NumericLiteral{Value: 42}, tree.BooleanLiteral{false}, tree.NumericLiteral{Value: 42}}}}}}
tree.Rule{Name: "read", Body: tree.Inclusion{Positive: true, Left: tree.NumericLiteral{23}, Rights: []tree.Numeric{tree.NumericLiteral{42}, tree.BooleanLiteral{false}, tree.NumericLiteral{42}}}}}}

val := EnsureValid(toCheck)

Expand Down
38 changes: 19 additions & 19 deletions compiler/compiler_arithmetic_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ func (s *CompilerArithmeticSuite) Test_compilationOfAdditionWithK(c *C) {
Rules: []tree.Rule{
tree.Rule{
Name: "write",
Body: tree.Comparison{Left: tree.Argument{Index: 0}, Op: tree.EQL, Right: tree.Arithmetic{Op: tree.PLUS, Left: tree.NumericLiteral{Value: 12}, Right: tree.NumericLiteral{Value: 4}}},
Body: tree.Comparison{Left: tree.Argument{Index: 0}, Op: tree.EQL, Right: tree.Arithmetic{Op: tree.PLUS, Left: tree.NumericLiteral{12}, Right: tree.NumericLiteral{4}}},
},
},
}
Expand Down Expand Up @@ -101,8 +101,8 @@ func (s *CompilerArithmeticSuite) Test_compilationOfMultiplicationWithK(c *C) {
Op: tree.EQL,
Right: tree.Arithmetic{
Op: tree.MULT,
Left: tree.NumericLiteral{Value: 3},
Right: tree.NumericLiteral{Value: 8},
Left: tree.NumericLiteral{3},
Right: tree.NumericLiteral{8},
},
},
},
Expand Down Expand Up @@ -182,8 +182,8 @@ func (s *CompilerArithmeticSuite) Test_compilationOfSubtractionWithK(c *C) {
Op: tree.EQL,
Right: tree.Arithmetic{
Op: tree.MINUS,
Left: tree.NumericLiteral{Value: 3},
Right: tree.NumericLiteral{Value: 8},
Left: tree.NumericLiteral{3},
Right: tree.NumericLiteral{8},
},
},
},
Expand Down Expand Up @@ -217,8 +217,8 @@ func (s *CompilerArithmeticSuite) Test_compilationOfDivisionWithK(c *C) {
Op: tree.EQL,
Right: tree.Arithmetic{
Op: tree.DIV,
Left: tree.NumericLiteral{Value: 10},
Right: tree.NumericLiteral{Value: 5},
Left: tree.NumericLiteral{10},
Right: tree.NumericLiteral{5},
},
},
},
Expand Down Expand Up @@ -252,8 +252,8 @@ func (s *CompilerArithmeticSuite) Test_compilationOfBinaryAndWithK(c *C) {
Op: tree.EQL,
Right: tree.Arithmetic{
Op: tree.BINAND,
Left: tree.NumericLiteral{Value: 4},
Right: tree.NumericLiteral{Value: 2},
Left: tree.NumericLiteral{4},
Right: tree.NumericLiteral{2},
},
},
},
Expand Down Expand Up @@ -287,8 +287,8 @@ func (s *CompilerArithmeticSuite) Test_compilationOfBinaryOrWithK(c *C) {
Op: tree.EQL,
Right: tree.Arithmetic{
Op: tree.BINOR,
Left: tree.NumericLiteral{Value: 4},
Right: tree.NumericLiteral{Value: 2},
Left: tree.NumericLiteral{4},
Right: tree.NumericLiteral{2},
},
},
},
Expand Down Expand Up @@ -322,8 +322,8 @@ func (s *CompilerArithmeticSuite) Test_compilationOfBitwiseLeftShiftWithK(c *C)
Op: tree.EQL,
Right: tree.Arithmetic{
Op: tree.LSH,
Left: tree.NumericLiteral{Value: 4},
Right: tree.NumericLiteral{Value: 2},
Left: tree.NumericLiteral{4},
Right: tree.NumericLiteral{2},
},
},
},
Expand Down Expand Up @@ -357,8 +357,8 @@ func (s *CompilerArithmeticSuite) Test_compilationOfBitwiseRightShiftWithK(c *C)
Op: tree.EQL,
Right: tree.Arithmetic{
Op: tree.RSH,
Left: tree.NumericLiteral{Value: 4},
Right: tree.NumericLiteral{Value: 2},
Left: tree.NumericLiteral{4},
Right: tree.NumericLiteral{2},
},
},
},
Expand Down Expand Up @@ -392,8 +392,8 @@ func (s *CompilerArithmeticSuite) Test_compilationOfModuloWithK(c *C) {
Op: tree.EQL,
Right: tree.Arithmetic{
Op: tree.MOD,
Left: tree.NumericLiteral{Value: 10},
Right: tree.NumericLiteral{Value: 3},
Left: tree.NumericLiteral{10},
Right: tree.NumericLiteral{3},
},
},
},
Expand Down Expand Up @@ -428,8 +428,8 @@ func (s *CompilerArithmeticSuite) Test_compilationOfBinaryXORWithK(c *C) {
Op: tree.EQL,
Right: tree.Arithmetic{
Op: tree.BINXOR,
Left: tree.NumericLiteral{Value: 4},
Right: tree.NumericLiteral{Value: 3},
Left: tree.NumericLiteral{4},
Right: tree.NumericLiteral{3},
},
},
},
Expand Down
20 changes: 10 additions & 10 deletions compiler/compiler_bool_expr_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ func (s *BoolCompilerSuite) Test_compliationOfOrOperation(c *C) {
tree.Rule{
Name: "write",
Body: tree.Or{
Left: tree.Comparison{Left: tree.Argument{Index: 0}, Op: tree.EQL, Right: tree.Arithmetic{Op: tree.PLUS, Left: tree.NumericLiteral{Value: 12}, Right: tree.NumericLiteral{Value: 4}}},
Right: tree.Comparison{Left: tree.Argument{Index: 0}, Op: tree.EQL, Right: tree.Arithmetic{Op: tree.PLUS, Left: tree.NumericLiteral{Value: 12}, Right: tree.NumericLiteral{Value: 4}}},
Left: tree.Comparison{Left: tree.Argument{Index: 0}, Op: tree.EQL, Right: tree.Arithmetic{Op: tree.PLUS, Left: tree.NumericLiteral{12}, Right: tree.NumericLiteral{4}}},
Right: tree.Comparison{Left: tree.Argument{Index: 0}, Op: tree.EQL, Right: tree.Arithmetic{Op: tree.PLUS, Left: tree.NumericLiteral{12}, Right: tree.NumericLiteral{4}}},
},
},
},
Expand Down Expand Up @@ -138,8 +138,8 @@ func (s *CompilerComparisonSuite) Test_compilationOfOrExpression(c *C) {
tree.Rule{
Name: "write",
Body: tree.Or{
Left: tree.Comparison{Left: tree.Argument{Index: 0}, Op: tree.EQL, Right: tree.NumericLiteral{Value: 42}},
Right: tree.Comparison{Left: tree.Argument{Index: 1}, Op: tree.EQL, Right: tree.NumericLiteral{Value: 42}},
Left: tree.Comparison{Left: tree.Argument{Index: 0}, Op: tree.EQL, Right: tree.NumericLiteral{42}},
Right: tree.Comparison{Left: tree.Argument{Index: 1}, Op: tree.EQL, Right: tree.NumericLiteral{42}},
},
},
},
Expand Down Expand Up @@ -168,8 +168,8 @@ func (s *CompilerComparisonSuite) Test_compilationOfAndExpression(c *C) {
tree.Rule{
Name: "write",
Body: tree.And{
Left: tree.Comparison{Left: tree.Argument{Index: 0}, Op: tree.EQL, Right: tree.NumericLiteral{Value: 42}},
Right: tree.Comparison{Left: tree.Argument{Index: 1}, Op: tree.EQL, Right: tree.NumericLiteral{Value: 42}},
Left: tree.Comparison{Left: tree.Argument{Index: 0}, Op: tree.EQL, Right: tree.NumericLiteral{42}},
Right: tree.Comparison{Left: tree.Argument{Index: 1}, Op: tree.EQL, Right: tree.NumericLiteral{42}},
},
},
},
Expand Down Expand Up @@ -200,8 +200,8 @@ func (s *CompilerComparisonSuite) Test_compilationOfNegatedExpression(c *C) {
Name: "write",
Body: tree.Negation{
Operand: tree.And{
Left: tree.Comparison{Left: tree.Argument{Index: 0}, Op: tree.EQL, Right: tree.NumericLiteral{Value: 42}},
Right: tree.Comparison{Left: tree.Argument{Index: 1}, Op: tree.EQL, Right: tree.NumericLiteral{Value: 42}},
Left: tree.Comparison{Left: tree.Argument{Index: 0}, Op: tree.EQL, Right: tree.NumericLiteral{42}},
Right: tree.Comparison{Left: tree.Argument{Index: 1}, Op: tree.EQL, Right: tree.NumericLiteral{42}},
},
},
},
Expand Down Expand Up @@ -231,9 +231,9 @@ func (s *CompilerComparisonSuite) Test_compilationOfNestedNegatedExpression(c *C
tree.Rule{
Name: "write",
Body: tree.And{
Left: tree.Comparison{Left: tree.Argument{Index: 0}, Op: tree.EQL, Right: tree.NumericLiteral{Value: 42}},
Left: tree.Comparison{Left: tree.Argument{Index: 0}, Op: tree.EQL, Right: tree.NumericLiteral{42}},
Right: tree.Negation{
Operand: tree.Comparison{Left: tree.Argument{Index: 1}, Op: tree.EQL, Right: tree.NumericLiteral{Value: 42}},
Operand: tree.Comparison{Left: tree.Argument{Index: 1}, Op: tree.EQL, Right: tree.NumericLiteral{42}},
},
},
},
Expand Down

0 comments on commit abb9721

Please sign in to comment.