Fix and re-apply formatter on all acceptance tests
Less noise, pretty tuples. Everyone's happy.
This commit is contained in:
@@ -1,19 +1,19 @@
|
||||
pub opaque type AssocList<key, value> {
|
||||
inner: List<#(key, value)>,
|
||||
inner: List<(key, value)>,
|
||||
}
|
||||
|
||||
pub fn new() -> AssocList<key, value> {
|
||||
AssocList { inner: [] }
|
||||
}
|
||||
|
||||
pub fn from_list(xs: List<#(key, value)>) -> AssocList<key, value> {
|
||||
pub fn from_list(xs: List<(key, value)>) -> AssocList<key, value> {
|
||||
AssocList { inner: do_from_list(xs) }
|
||||
}
|
||||
|
||||
fn do_from_list(xs: List<#(key, value)>) -> List<#(key, value)> {
|
||||
fn do_from_list(xs: List<(key, value)>) -> List<(key, value)> {
|
||||
when xs is {
|
||||
[] -> []
|
||||
[#(k, v), ..rest] -> do_insert(do_from_list(rest), k, v)
|
||||
[(k, v), ..rest] -> do_insert(do_from_list(rest), k, v)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,35 +26,35 @@ pub fn insert(
|
||||
}
|
||||
|
||||
fn do_insert(
|
||||
elems: List<#(key, value)>,
|
||||
elems: List<(key, value)>,
|
||||
k: key,
|
||||
v: value,
|
||||
) -> List<#(key, value)> {
|
||||
) -> List<(key, value)> {
|
||||
when elems is {
|
||||
[] -> [#(k, v)]
|
||||
[#(k2, v2), ..rest] ->
|
||||
[] -> [(k, v)]
|
||||
[(k2, v2), ..rest] ->
|
||||
if k == k2 {
|
||||
[#(k, v), ..rest]
|
||||
[(k, v), ..rest]
|
||||
} else {
|
||||
[#(k2, v2), ..do_insert(rest, k, v)]
|
||||
[(k2, v2), ..do_insert(rest, k, v)]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pub fn union(
|
||||
left left: AssocList<key, value>,
|
||||
right right: AssocList<key, value>,
|
||||
left: AssocList<key, value>,
|
||||
right: AssocList<key, value>,
|
||||
) -> AssocList<key, value> {
|
||||
AssocList { inner: do_union(left.inner, right.inner) }
|
||||
}
|
||||
|
||||
fn do_union(
|
||||
left: List<#(key, value)>,
|
||||
right: List<#(key, value)>,
|
||||
) -> List<#(key, value)> {
|
||||
left: List<(key, value)>,
|
||||
right: List<(key, value)>,
|
||||
) -> List<(key, value)> {
|
||||
when left is {
|
||||
[] -> right
|
||||
[#(k, v), ..rest] -> do_union(rest, do_insert(right, k, v))
|
||||
[(k, v), ..rest] -> do_union(rest, do_insert(right, k, v))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user