Resultados de la búsqueda a petición "ffi"

2 la respuesta

¿Cuál es la forma correcta de asignar datos para pasar a una llamada FFI?

Despuésdiscutir / aprender sobre la forma correcta de llamar a un FFI de la API de Windows desde Rust [https://stackoverflow.com/questions/39534712/should-i-pass-a-mutable-reference-or-transfer-ownership-of-a-variable-in-the-con] , Jugué un poco ...

3 la respuesta

Intercambie datos estructurados entre Haskell y C

Primero, soy un principiante de Haskell. Estoy planeando integrar Haskell en C para el juego en tiempo real. Haskell hace lógica, C hace renderizado. Para hacer esto, tengo que pasar enormes datos de estructura compleja (estado del juego) entre ...

2 la respuesta

Declaración de datos vacíos almacenables

Estoy intentando crear un contenedor Haskell para una biblioteca C. Las estructuras subyacentes son demasiado complicadas para expresarlas como tipos explícitos, y en realidad no las uso más que para pasar entre las funciones de C, así que estoy ...

3 la respuesta

¿Cómo puedo crear un puntero a datos existentes usando el LuaJIT FFI?

Sé que hay ejemplos de creación de punteros utilizando el LuaJIT FFI, pero la mayoría de estos no apuntan a datos existentes. Un ejemplo de esto está aquí: ¿Cómo pasar un puntero a LuaJIT ffi para usarlo como ...

2 la respuesta

¿Cómo convierto una cadena C en una cadena Rust y viceversa a través de FFI?

Estoy tratando de obtener una cadena C devuelta por una biblioteca C y convertirla en una cadena Rust a través de FFI. mylib.c const char* hello(){ return "Hello World!"; }main.rs #![feature(link_args)] extern crate libc; use libc::c_char; ...

1 la respuesta

¿Cómo vincular un archivo de objeto personalizado con la biblioteca Haskell?

Creé un paquete Haskell que hace llamadas FFI a funciones definidas en el código CUDA. Me gustaría compilar el archivo .cu en un archivo de objeto (.o) durante la compilación del paquete y forzar al vinculador a vincularlo. Hasta ahora, intenté ...

1 la respuesta

¿Cómo puedo indexar matrices C en Rust?

Tengo una función C que devuelve un puntero: type MYSQL_RES_REF = *mut c_void; type MYSQL_ROW = *const *const c_char; #[no_mangle] extern "C" { fn mysql_fetch_row(res: MYSQL_RES_REF) -> MYSQL_ROW; } let pointer = mysql_fetch_row(self.res); let ...

1 la respuesta

¿Cuál es la forma correcta de pasar de un String a un * const i8?

En mi actual saga de escribir unenvoltura segura [https://github.com/tupshin/cql-ffi/]Para elControlador Cassandra C ++ [https://github.com/datastax/cpp-driver/], ahora mi ojo se vuelve hacia evitar pérdidas de memoria al llamar a funciones C con ...

1 la respuesta

Biblioteca C liberando un puntero proveniente de Rust

Quiero hacer enlaces Rust a una biblioteca de C que requiera una devolución de llamada, y esta devolución de llamada debe devolver un estilo Cchar* puntero a la biblioteca C que luego lo liberará. La devolución de llamada debe estar en cierto ...

1 la respuesta

Genéricos de ocultamiento de punteros a través de `mem :: transmute ()`

Estoy intentando escribir enlaces Rust para una biblioteca de colección C (Judy Arrays [1]) que solo proporciona espacio para almacenar un valor de ancho de puntero. Mi empresa tiene una buena cantidad de código existente que utiliza este espacio ...