47 lines
3.2 KiB
Plaintext
47 lines
3.2 KiB
Plaintext
contract interface Animal =
|
|
entrypoint sound : () => string
|
|
|
|
contract Cat : Animal =
|
|
entrypoint sound() = "meow"
|
|
|
|
main contract Main =
|
|
entrypoint oracle() = ok_2YNyxd6TRJPNrTcEDCe9ra59SVUdp9FR9qWC5msKZWYD9bP9z5
|
|
|
|
entrypoint query() = oq_2oRvyowJuJnEkxy58Ckkw77XfWJrmRgmGaLzhdqb67SKEL1gPY
|
|
|
|
entrypoint init() =
|
|
let o01 : oracle(Animal, Animal) = oracle() : oracle(Animal, Animal) // success
|
|
let o02 : oracle(Animal, Animal) = oracle() : oracle(Animal, Cat) // success
|
|
let o03 : oracle(Animal, Animal) = oracle() : oracle(Cat, Animal) // fail
|
|
let o04 : oracle(Animal, Animal) = oracle() : oracle(Cat, Cat) // fail
|
|
let o05 : oracle(Animal, Cat) = oracle() : oracle(Animal, Animal) // fail
|
|
let o06 : oracle(Animal, Cat) = oracle() : oracle(Animal, Cat) // success
|
|
let o07 : oracle(Animal, Cat) = oracle() : oracle(Cat, Animal) // fail
|
|
let o08 : oracle(Animal, Cat) = oracle() : oracle(Cat, Cat) // fail
|
|
let o09 : oracle(Cat, Animal) = oracle() : oracle(Animal, Animal) // success
|
|
let o10 : oracle(Cat, Animal) = oracle() : oracle(Animal, Cat) // success
|
|
let o11 : oracle(Cat, Animal) = oracle() : oracle(Cat, Animal) // success
|
|
let o12 : oracle(Cat, Animal) = oracle() : oracle(Cat, Cat) // success
|
|
let o13 : oracle(Cat, Cat) = oracle() : oracle(Animal, Animal) // fail
|
|
let o14 : oracle(Cat, Cat) = oracle() : oracle(Animal, Cat) // success
|
|
let o15 : oracle(Cat, Cat) = oracle() : oracle(Cat, Animal) // fail
|
|
let o16 : oracle(Cat, Cat) = oracle() : oracle(Cat, Cat) // success
|
|
|
|
let q01 : oracle_query(Animal, Animal) = query() : oracle_query(Animal, Animal) // success
|
|
let q02 : oracle_query(Animal, Animal) = query() : oracle_query(Animal, Cat) // fail
|
|
let q03 : oracle_query(Animal, Animal) = query() : oracle_query(Cat, Animal) // success
|
|
let q04 : oracle_query(Animal, Animal) = query() : oracle_query(Cat, Cat) // fail
|
|
let q05 : oracle_query(Animal, Cat) = query() : oracle_query(Animal, Animal) // success
|
|
let q06 : oracle_query(Animal, Cat) = query() : oracle_query(Animal, Cat) // success
|
|
let q07 : oracle_query(Animal, Cat) = query() : oracle_query(Cat, Animal) // success
|
|
let q08 : oracle_query(Animal, Cat) = query() : oracle_query(Cat, Cat) // success
|
|
let q09 : oracle_query(Cat, Animal) = query() : oracle_query(Animal, Animal) // fail
|
|
let q10 : oracle_query(Cat, Animal) = query() : oracle_query(Animal, Cat) // fail
|
|
let q11 : oracle_query(Cat, Animal) = query() : oracle_query(Cat, Animal) // success
|
|
let q12 : oracle_query(Cat, Animal) = query() : oracle_query(Cat, Cat) // fail
|
|
let q13 : oracle_query(Cat, Cat) = query() : oracle_query(Animal, Animal) // fail
|
|
let q14 : oracle_query(Cat, Cat) = query() : oracle_query(Animal, Cat) // fail
|
|
let q15 : oracle_query(Cat, Cat) = query() : oracle_query(Cat, Animal) // success
|
|
let q16 : oracle_query(Cat, Cat) = query() : oracle_query(Cat, Cat) // success
|
|
|
|
() |