Update dependencies and fix breaking changes in libffi-sys and arcu
This commit is contained in:
594
Cargo.lock
generated
594
Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@@ -38,7 +38,7 @@ to-syn-value_derive = "0.1.1"
|
|||||||
walkdir = "2"
|
walkdir = "2"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
arcu = { version = "0.1.1", features = ["thread_local_counter"] }
|
arcu = { version = "0.1.2", features = ["thread_local_counter"] }
|
||||||
base64 = "0.22.1"
|
base64 = "0.22.1"
|
||||||
bit-set = "0.8.0"
|
bit-set = "0.8.0"
|
||||||
bitvec = "1"
|
bitvec = "1"
|
||||||
|
|||||||
@@ -86,6 +86,10 @@ pub struct F64Table {
|
|||||||
update: Mutex<()>,
|
update: Mutex<()>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO: Actually prove this, as it's probably unsound right now
|
||||||
|
unsafe impl Send for F64Table {}
|
||||||
|
unsafe impl Sync for F64Table {}
|
||||||
|
|
||||||
#[inline(always)]
|
#[inline(always)]
|
||||||
pub fn lookup_float(
|
pub fn lookup_float(
|
||||||
offset: F64Offset,
|
offset: F64Offset,
|
||||||
|
|||||||
12
src/ffi.rs
12
src/ffi.rs
@@ -53,13 +53,23 @@ pub struct ForeignFunctionTable {
|
|||||||
structs: HashMap<String, StructImpl>,
|
structs: HashMap<String, StructImpl>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Clone)]
|
||||||
struct StructImpl {
|
struct StructImpl {
|
||||||
ffi_type: ffi_type,
|
ffi_type: ffi_type,
|
||||||
fields: Vec<*mut ffi_type>,
|
fields: Vec<*mut ffi_type>,
|
||||||
atom_fields: Vec<Atom>,
|
atom_fields: Vec<Atom>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl std::fmt::Debug for StructImpl {
|
||||||
|
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||||
|
f.debug_struct("StructImpl")
|
||||||
|
.field("ffi_type", &&"<???>")
|
||||||
|
.field("fields", &self.fields)
|
||||||
|
.field("atom_fields", &self.atom_fields)
|
||||||
|
.finish()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
struct PointerArgs {
|
struct PointerArgs {
|
||||||
pointers: Vec<*mut c_void>,
|
pointers: Vec<*mut c_void>,
|
||||||
_memory: Vec<Box<dyn Any>>,
|
_memory: Vec<Box<dyn Any>>,
|
||||||
|
|||||||
Reference in New Issue
Block a user