Meta type ‣ isArgumentString(T, arg_index) - chung-leong/zigar GitHub Wiki

Determine whether an argument to a callback function should be a text string.

Usage:

const std = @import("std");

const Callback = fn ([]const u8) void;
pub fn call(cb: *const Callback) void {
    cb("hello");
}

const module = @This();
pub const @"meta(zigar)" = struct {
    pub fn isArgumentString(comptime T: type, comptime arg_index: usize) bool {
        return T == Callback and arg_index == 0;
    }
};
import { call } from './meta-type-string-example-3.zig';

call(arg => console.log(arg));
hello

Arguments:

  • T - Callback function type
  • arg_index - Index of argument in question

Meta types | Text string