diff options
author | Aspen Smith <root@gws.fyi> | 2024-02-01T21·48-0500 |
---|---|---|
committer | aspen <root@gws.fyi> | 2024-02-08T19·59+0000 |
commit | 780b47193a19ec34d467776b142d115bd0029dff (patch) | |
tree | a7dbbb2e43a113a7078dd8df7209037f87ad460c /third_party/emacs | |
parent | 4e040e8bc491bcee930ee7e59d6e68ef87c35bb6 (diff) |
refactor(tvix/eval): Generalize propagation of catchable values r/7482
Rather than explicitly checking for Value::Catchable in all builtins, make the #[builtin] proc macro insert this for all strict arguments by default, with support for a #[catch] attribute on the argument to disable this behavior. That attribute hasn't actually been *used* anywhere here, primarily because the tests pass without it, even for those builtins which weren't previously checking for Value::Catchable - if some time passes without this being used I might get rid of support for it entirely. There's also a `try_value` macro in builtins directly for the places where builtins were eg forcing something, then explicitly propagating a catchable value. Change-Id: Ie22037b9d3e305e3bdb682d105fe467bd90d53e9 Reviewed-on: https://cl.tvl.fyi/c/depot/+/10732 Tested-by: BuildkiteCI Reviewed-by: raitobezarius <tvl@lahfa.xyz>
Diffstat (limited to 'third_party/emacs')
0 files changed, 0 insertions, 0 deletions