Files
scriptc/tests/ffi/profile.json
2026-08-11 01:12:41 -05:00

111 lines
2.9 KiB
JSON

{
"ffi_format": 2,
"functions": [
{ "name": "nativeScale", "symbol": "sf_scale", "params": ["f64"], "returns": "f64" },
{ "name": "nativeInvert", "symbol": "sf_invert", "params": ["bool"], "returns": "bool" },
{ "name": "nativeU8", "symbol": "sf_u8", "params": ["u8"], "returns": "u8" },
{ "name": "nativeU32", "symbol": "sf_u32", "params": ["u32"], "returns": "u32" },
{ "name": "nativeI32", "symbol": "sf_i32", "params": ["i32"], "returns": "i32" },
{ "name": "nativeTextSum", "symbol": "sf_text_sum", "params": ["string"], "returns": "f64" },
{ "name": "nativeBytesSum", "symbol": "sf_bytes_sum", "params": ["bytes"], "returns": "f64" },
{ "name": "nativeNote", "symbol": "sf_note", "params": ["f64"], "returns": "void" },
{ "name": "nativeLastNote", "symbol": "sf_last_note", "params": [], "returns": "f64" },
{
"name": "nativeApply",
"symbol": "sf_apply",
"params": [
{
"callback": {
"id": "apply",
"params": ["f64", { "context": "apply" }],
"returns": "f64",
"lifetime": "call"
}
},
"f64",
{ "context": "apply" }
],
"returns": "f64"
},
{
"name": "nativeCombineRaw",
"symbol": "sf_combine_raw",
"params": [
{
"callback": {
"id": "left",
"params": ["f64"],
"returns": "f64",
"lifetime": "call"
}
},
{
"callback": {
"id": "right",
"params": ["f64"],
"returns": "f64",
"lifetime": "call"
}
},
"f64"
],
"returns": "f64"
},
{
"name": "nativeCallbackSymbolCollision",
"symbol": "sc_ffi_cb_0",
"params": [
{
"callback": {
"id": "collision",
"params": ["f64"],
"returns": "f64",
"lifetime": "call"
}
}
],
"returns": "f64"
},
{
"name": "nativeCallbackTlsCollision",
"symbol": "sc_ffi_cb_ctx_2",
"params": ["f64"],
"returns": "f64"
},
{
"name": "nativeCallbackMix",
"symbol": "sf_callback_mix",
"params": [
{
"callback": {
"id": "mix",
"params": ["bool", "u8", "u32", "i32", "f64", { "context": "mix" }],
"returns": "u32",
"lifetime": "call"
}
},
{ "context": "mix" }
],
"returns": "u32"
},
{
"name": "nativeEach",
"symbol": "sf_each",
"params": [
{
"callback": {
"id": "each",
"params": ["f64", { "context": "each" }],
"returns": "void",
"lifetime": "call"
}
},
{ "context": "each" }
],
"returns": "void"
}
],
"libraries": [],
"system_libraries": []
}