Fix opaque type destructuring in code gen
This commit is contained in:
24
examples/acceptance_tests/097/lib/foo.ak
Normal file
24
examples/acceptance_tests/097/lib/foo.ak
Normal file
@@ -0,0 +1,24 @@
|
||||
pub opaque type Dict<a, b> {
|
||||
inner: List<(a, b)>,
|
||||
}
|
||||
|
||||
pub opaque type Value {
|
||||
inner: Dict<ByteArray, Dict<ByteArray, Int>>,
|
||||
}
|
||||
|
||||
fn to_dict(v: Value) {
|
||||
v.inner
|
||||
}
|
||||
|
||||
fn to_list(d: Dict<a, b>) {
|
||||
d.inner
|
||||
}
|
||||
|
||||
test opaque_destructure() {
|
||||
let x = Value { inner: Dict { inner: [(#"", Dict { inner: [("ab", 3)] })] } }
|
||||
|
||||
expect [(policy_a, Dict{inner: [(asset_name_a, quantity_a), ..]}), ..] =
|
||||
x |> to_dict() |> to_list()
|
||||
|
||||
quantity_a > 2
|
||||
}
|
||||
Reference in New Issue
Block a user