#[must_use = "`Chunk`s do nothing unless one of `exec`, `eval`, `call`, or `into_function` are called on them"]
pub struct Chunk<'lua, 'a> { /* fields omitted */ }
Returned from Context::load
and is used to finalize loading and executing Lua main chunks.
Sets the name of this chunk, which results in more informative error traces.
Sets the first upvalue (_ENV) of the loaded chunk to the given value.
Lua main chunks always have exactly one upvalue, and this upvalue is used as the _ENV
variable inside the chunk. By default this value is set to the global environment.
Calling this method changes the _ENV upvalue to the value provided, and variables inside the
chunk will refer to the given environment rather than the global one.
All global variables (including the standard library!) are looked up in _ENV
, so it may be
necessary to populate the environment in order for scripts using custom environments to be
useful.
Execute this chunk of code.
This is equivalent to calling the chunk function with no arguments and no return values.
Evaluate the chunk as either an expression or block.
If the chunk can be parsed as an expression, this loads and executes the chunk and returns
the value that it evaluates to. Otherwise, the chunk is interpreted as a block as normal,
and this is equivalent to calling exec
.
Load the chunk function and call it with the given arguemnts.
This is equivalent to into_function
and calling the resulting function.
Load this chunk into a regular Function
.
This simply compiles the chunk without actually executing it.
🔬 This is a nightly-only experimental API. (try_from
)
The type returned in the event of a conversion error.
🔬 This is a nightly-only experimental API. (try_from
)
Immutably borrows from an owned value. Read more
🔬 This is a nightly-only experimental API. (try_from
)
The type returned in the event of a conversion error.
🔬 This is a nightly-only experimental API. (try_from
)
Mutably borrows from an owned value. Read more
🔬 This is a nightly-only experimental API. (get_type_id
)
this method will likely be replaced by an associated static