mirror of
https://github.com/ziglang/zig.git
synced 2024-11-26 23:22:44 +00:00
c39ba682e3
Some checks are pending
ci / x86_64-linux-debug (push) Waiting to run
ci / x86_64-linux-release (push) Waiting to run
ci / aarch64-linux-debug (push) Waiting to run
ci / aarch64-linux-release (push) Waiting to run
ci / x86_64-macos-release (push) Waiting to run
ci / aarch64-macos-debug (push) Waiting to run
ci / aarch64-macos-release (push) Waiting to run
ci / x86_64-windows-debug (push) Waiting to run
ci / x86_64-windows-release (push) Waiting to run
ci / aarch64-windows (push) Waiting to run
36 lines
1.2 KiB
Zig
36 lines
1.2 KiB
Zig
pub const CallModifier = enum {
|
|
/// Equivalent to function call syntax.
|
|
auto,
|
|
|
|
/// Equivalent to async keyword used with function call syntax.
|
|
async_kw,
|
|
|
|
/// Prevents tail call optimization. This guarantees that the return
|
|
/// address will point to the callsite, as opposed to the callsite's
|
|
/// callsite. If the call is otherwise required to be tail-called
|
|
/// or inlined, a compile error is emitted instead.
|
|
never_tail,
|
|
|
|
/// Guarantees that the call will not be inlined. If the call is
|
|
/// otherwise required to be inlined, a compile error is emitted instead.
|
|
never_inline,
|
|
|
|
/// Asserts that the function call will not suspend. This allows a
|
|
/// non-async function to call an async function.
|
|
no_async,
|
|
|
|
/// Guarantees that the call will be generated with tail call optimization.
|
|
/// If this is not possible, a compile error is emitted instead.
|
|
always_tail,
|
|
|
|
/// Guarantees that the call will be inlined at the callsite.
|
|
/// If this is not possible, a compile error is emitted instead.
|
|
always_inline,
|
|
|
|
/// Evaluates the call at compile-time. If the call cannot be completed at
|
|
/// compile-time, a compile error is emitted instead.
|
|
compile_time,
|
|
};
|
|
|
|
// syntax
|