    \((1...maxArity).map { generateInjectorFunc(arity: $0) }.joined(separator: "\n"))
    }
    """
    try content.write(to: path, atomically: true, encoding: .utf8)
}

func generateInjectorFunc(arity: Int) -> String {
    let arityTypes = (1...arity).map { "T\($0)" }.joined(separator: ", ")

    let content = """