Files
mgmt/examples/lang/panic0.mcl
James Shubin 9c0bde0b29 lang: funcs, parser: Add improved panic magic
This is a newer implementation of the panic magic. I kept the old commit
in for posterity and to show the difference. The two versions are
identical to the end-user with one exception: the newer version doesn't
include a useless panic resource in the graph when there is no panic. In
this version, the panic function returns false and the if statement it's
the condition of, doesn't produce the resource within. On error, we
still consume the function in the if expression, and doing so causes
everything to shutdown.

The other benefit is that the implementation is much cleaner and doesn't
need the interpolate hack.
2023-11-28 14:40:21 -05:00

18 lines
403 B
Plaintext

import "panic/" as nested # local, relative module to prove it can nest
panic("") # should NOT panic
panic("") # should NOT panic
panic("fail1") # should panic
panic("fail2") # should panic
include nested.foo()
test "test" {
anotherstr => "hello!\n",
}
# this is what we're simulating:
#if panic("whatever1") { # this is a function (and an if statement)
# _panic "panic" {} # this is a resource
#}