forked from TrueCloudLab/neoneo-go
23cfebf621
* implemented add, mul, div, sub assign for identifiers. * Implemented struct field initialization. * Implemented imports * Implemented storage VM API (interop layer) + additional bug fixes when encountered. * Bumped version 0.12.0 * fixed double point extension on compiled output file. * Fixed bug where callExpr in returns where added to voidCall * fixed binExpr compare equal * Check the env for the gopath first * removed travis.yml * custom types + implemented general declarations. * commented out the storage test to make the build pass
74 lines
1.2 KiB
Go
74 lines
1.2 KiB
Go
package compiler
|
|
|
|
var ifStatementTestCases = []testCase{
|
|
{
|
|
"if statement LT",
|
|
`
|
|
package testcase
|
|
func Main() int {
|
|
x := 10
|
|
if x < 100 {
|
|
return 1
|
|
}
|
|
return 0
|
|
}
|
|
`,
|
|
"54c56b5a6c766b00527ac46c766b00c301649f640b0062030051616c756662030000616c7566",
|
|
},
|
|
{
|
|
"if statement GT",
|
|
`
|
|
package testcase
|
|
func Main() int {
|
|
x := 10
|
|
if x > 100 {
|
|
return 1
|
|
}
|
|
return 0
|
|
}
|
|
`,
|
|
"54c56b5a6c766b00527ac46c766b00c30164a0640b0062030051616c756662030000616c7566",
|
|
},
|
|
{
|
|
"if statement GTE",
|
|
`
|
|
package testcase
|
|
func Main() int {
|
|
x := 10
|
|
if x >= 100 {
|
|
return 1
|
|
}
|
|
return 0
|
|
}
|
|
`,
|
|
"54c56b5a6c766b00527ac46c766b00c30164a2640b0062030051616c756662030000616c7566",
|
|
},
|
|
{
|
|
"complex if statement with LAND",
|
|
`
|
|
package testcase
|
|
func Main() int {
|
|
x := 10
|
|
if x >= 10 && x <= 20 {
|
|
return 1
|
|
}
|
|
return 0
|
|
}
|
|
`,
|
|
"54c56b5a6c766b00527ac46c766b00c35aa26416006c766b00c30114a1640b0062030051616c756662030000616c7566",
|
|
},
|
|
{
|
|
"complex if statement with LOR",
|
|
`
|
|
package testcase
|
|
func Main() int {
|
|
x := 10
|
|
if x >= 10 || x <= 20 {
|
|
return 1
|
|
}
|
|
return 0
|
|
}
|
|
`,
|
|
"54c56b5a6c766b00527ac46c766b00c35aa2630e006c766b00c30114a1640b0062030051616c756662030000616c7566",
|
|
},
|
|
}
|