fix: one builtin error wasn't be caught with a messaged exception
This commit is contained in:
parent
eda4e259d6
commit
3a44c45b48
|
@ -1587,13 +1587,24 @@ pub fn list_access_to_uplc(
|
||||||
|
|
||||||
if matches!(expect_level, ExpectLevel::None) {
|
if matches!(expect_level, ExpectLevel::None) {
|
||||||
acc.lambda(name).apply(head_list).lambda(tail_name)
|
acc.lambda(name).apply(head_list).lambda(tail_name)
|
||||||
} else {
|
} else if error_term == Term::Error {
|
||||||
Term::tail_list()
|
Term::tail_list()
|
||||||
.apply(Term::var(tail_name.to_string()))
|
.apply(Term::var(tail_name.to_string()))
|
||||||
.delayed_choose_list(acc, error_term.clone())
|
.delayed_choose_list(acc, error_term.clone())
|
||||||
.lambda(name)
|
.lambda(name)
|
||||||
.apply(head_list)
|
.apply(head_list)
|
||||||
.lambda(tail_name)
|
.lambda(tail_name)
|
||||||
|
} else {
|
||||||
|
Term::var(tail_name.to_string())
|
||||||
|
.delayed_choose_list(
|
||||||
|
error_term.clone(),
|
||||||
|
Term::tail_list()
|
||||||
|
.apply(Term::var(tail_name.to_string()))
|
||||||
|
.delayed_choose_list(acc, error_term.clone())
|
||||||
|
.lambda(name)
|
||||||
|
.apply(head_list),
|
||||||
|
)
|
||||||
|
.lambda(tail_name)
|
||||||
}
|
}
|
||||||
} else if name == "_" {
|
} else if name == "_" {
|
||||||
if matches!(expect_level, ExpectLevel::None) || error_term == Term::Error {
|
if matches!(expect_level, ExpectLevel::None) || error_term == Term::Error {
|
||||||
|
|
Loading…
Reference in New Issue