Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Zigで伺か用のDLLを作成する際、ZigとCとの橋渡しを楽にするパッケージ

License

Notifications You must be signed in to change notification settings

syobocat/ukadll_zig

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ukadll_zig

Zigで伺か用のDLLを作成する際、ZigとCとの橋渡しを楽にするパッケージ

使用例

const std = @import("std");
const ukadll = @import("ukadll");

var gpa = std.heap.GeneralPurposeAllocator(.{}){};
const allocator = gpa.allocator();

export const loadu = ukadll.load(_loadu);
export const load = ukadll.load(_load);
export const unload = ukadll.unload(_unload);
export const request = ukadll.request(_request, allocator);

fn _loadu(_: []const u8) !void {
    // リソースの読み込み等 (UTF-8版)
}

fn _load(_: []const u8) !void {
    // リソースの読み込み等 (CP932版)
}

fn _unload() void {
    // リソースの解放等
    _ = gpa.deinit();
}

fn _request(_: []const u8, _: std.mem.Allocator) [:0]const u8 {
    // リクエストの処理
    return "SHIORI/3.0 204 No Content\r\n\r\n";
}

About

Zigで伺か用のDLLを作成する際、ZigとCとの橋渡しを楽にするパッケージ

Topics

Resources

License

Stars

Watchers

Forks

Languages