====
>>> main.whiley
property unique_elements<T>(T[] items, int end) -> (bool r):
// All items upto end are unique
return end >= 0 && end <= |items| &&
all { i in 0..end, j in (i+1)..end | items[i] != items[j] }
public export method test():
assert unique_elements([0,0],0)
assert unique_elements([0,0],1)
assert unique_elements([0,0],2)
---
E705 main.whiley 9,10:33
E722 main.whiley 9,10:33
=====
>>> main.whiley 7:10
assert unique_elements([0,1,0],0)
assert unique_elements([0,1,0],1)
assert unique_elements([0,1,0],2)
assert unique_elements([0,1,0],3)
---
E705 main.whiley 10,10:35
E722 main.whiley 10,10:35
=====
>>> main.whiley 7:11
assert unique_elements([0],0)
assert unique_elements([0],1)
//
assert unique_elements([0,1],0)
assert unique_elements([0,1],1)
assert unique_elements([0,1],2)
//
assert unique_elements([0,1,2],0)
assert unique_elements([0,1,2],1)
assert unique_elements([0,1,2],2)
assert unique_elements([0,1,2],3)
//
assert unique_elements([1,0,2],0)
assert unique_elements([1,0,2],1)
assert unique_elements([1,0,2],2)
assert unique_elements([1,0,2],3)
//
assert unique_elements([0,2,1],0)
assert unique_elements([0,2,1],1)
assert unique_elements([0,2,1],2)
assert unique_elements([0,2,1],3)
assert unique_elements([2,1,0],0)
assert unique_elements([2,1,0],1)
assert unique_elements([2,1,0],2)
assert unique_elements([2,1,0],3)
---