zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

builtin.CallModifier struct.zig (1256B) - Raw


      1 pub const CallModifier = enum {
      2     /// Equivalent to function call syntax.
      3     auto,
      4 
      5     /// Equivalent to async keyword used with function call syntax.
      6     async_kw,
      7 
      8     /// Prevents tail call optimization. This guarantees that the return
      9     /// address will point to the callsite, as opposed to the callsite's
     10     /// callsite. If the call is otherwise required to be tail-called
     11     /// or inlined, a compile error is emitted instead.
     12     never_tail,
     13 
     14     /// Guarantees that the call will not be inlined. If the call is
     15     /// otherwise required to be inlined, a compile error is emitted instead.
     16     never_inline,
     17 
     18     /// Asserts that the function call will not suspend. This allows a
     19     /// non-async function to call an async function.
     20     no_async,
     21 
     22     /// Guarantees that the call will be generated with tail call optimization.
     23     /// If this is not possible, a compile error is emitted instead.
     24     always_tail,
     25 
     26     /// Guarantees that the call will be inlined at the callsite.
     27     /// If this is not possible, a compile error is emitted instead.
     28     always_inline,
     29 
     30     /// Evaluates the call at compile-time. If the call cannot be completed at
     31     /// compile-time, a compile error is emitted instead.
     32     compile_time,
     33 };
     34 
     35 // syntax