mirror of
https://github.com/mii443/wasmer.git
synced 2025-12-09 14:18:20 +00:00
fix rkyv compilation errors
This commit is contained in:
1
Cargo.lock
generated
1
Cargo.lock
generated
@@ -1740,6 +1740,7 @@ dependencies = [
|
||||
name = "rkyv"
|
||||
version = "0.4.1"
|
||||
dependencies = [
|
||||
"cranelift-entity",
|
||||
"indexmap",
|
||||
"memoffset",
|
||||
"ptr_meta",
|
||||
|
||||
@@ -17,6 +17,7 @@ use std::ptr::NonNull;
|
||||
use std::sync::Mutex;
|
||||
use thiserror::Error;
|
||||
use wasmer_types::{Bytes, MemoryType, Pages};
|
||||
use rkyv::{Serialize as RkyvSerialize, Deserialize as RkyvDeserialize, Archive};
|
||||
|
||||
/// Error type describing things that can go wrong when operating on Wasm Memories.
|
||||
#[derive(Error, Debug, Clone, PartialEq, Hash)]
|
||||
@@ -61,7 +62,7 @@ pub enum MemoryError {
|
||||
}
|
||||
|
||||
/// Implementation styles for WebAssembly linear memory.
|
||||
#[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
|
||||
#[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize, RkyvSerialize, RkyvDeserialize, Archive)]
|
||||
pub enum MemoryStyle {
|
||||
/// The actual memory can be resized and moved.
|
||||
Dynamic {
|
||||
|
||||
@@ -15,9 +15,10 @@ use std::fmt;
|
||||
use std::ptr::NonNull;
|
||||
use std::sync::Mutex;
|
||||
use wasmer_types::{TableType, Type as ValType};
|
||||
use rkyv::{Serialize as RkyvSerialize, Deserialize as RkyvDeserialize, Archive};
|
||||
|
||||
/// Implementation styles for WebAssembly tables.
|
||||
#[derive(Debug, Clone, Hash, Serialize, Deserialize)]
|
||||
#[derive(Debug, Clone, Hash, Serialize, Deserialize, RkyvSerialize, RkyvDeserialize, Archive)]
|
||||
pub enum TableStyle {
|
||||
/// Signatures are stored in the table and checked in the caller.
|
||||
CallerChecksSignature,
|
||||
|
||||
@@ -10,8 +10,10 @@ use rkyv::{Serialize as RkyvSerialize, Deserialize as RkyvDeserialize, Archive};
|
||||
#[derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)]
|
||||
#[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))]
|
||||
#[cfg_attr(feature = "enable-rkyv", derive(RkyvSerialize, RkyvDeserialize, Archive))]
|
||||
#[cfg_attr(feature = "enable-rkyv", archive(derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)))]
|
||||
pub struct LocalFunctionIndex(u32);
|
||||
entity_impl!(LocalFunctionIndex);
|
||||
entity_impl!(ArchivedLocalFunctionIndex);
|
||||
|
||||
/// Index type of a table defined locally inside the WebAssembly module.
|
||||
#[derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)]
|
||||
@@ -29,69 +31,88 @@ entity_impl!(LocalMemoryIndex);
|
||||
#[derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)]
|
||||
#[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))]
|
||||
#[cfg_attr(feature = "enable-rkyv", derive(RkyvSerialize, RkyvDeserialize, Archive))]
|
||||
#[cfg_attr(feature = "enable-rkyv", archive(derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)))]
|
||||
pub struct LocalGlobalIndex(u32);
|
||||
entity_impl!(LocalGlobalIndex);
|
||||
entity_impl!(ArchivedLocalGlobalIndex);
|
||||
|
||||
/// Index type of a function (imported or local) inside the WebAssembly module.
|
||||
#[derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)]
|
||||
#[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))]
|
||||
#[cfg_attr(feature = "enable-rkyv", derive(RkyvSerialize, RkyvDeserialize, Archive))]
|
||||
#[cfg_attr(feature = "enable-rkyv", archive(derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)))]
|
||||
pub struct FunctionIndex(u32);
|
||||
entity_impl!(FunctionIndex);
|
||||
entity_impl!(ArchivedFunctionIndex);
|
||||
|
||||
/// Index type of a table (imported or local) inside the WebAssembly module.
|
||||
#[derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)]
|
||||
#[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))]
|
||||
#[cfg_attr(feature = "enable-rkyv", derive(RkyvSerialize, RkyvDeserialize, Archive))]
|
||||
#[cfg_attr(feature = "enable-rkyv", archive(derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)))]
|
||||
pub struct TableIndex(u32);
|
||||
entity_impl!(TableIndex);
|
||||
entity_impl!(ArchivedTableIndex);
|
||||
|
||||
/// Index type of a global variable (imported or local) inside the WebAssembly module.
|
||||
#[derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)]
|
||||
#[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))]
|
||||
#[cfg_attr(feature = "enable-rkyv", derive(RkyvSerialize, RkyvDeserialize, Archive))]
|
||||
#[cfg_attr(feature = "enable-rkyv", archive(derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)))]
|
||||
pub struct GlobalIndex(u32);
|
||||
entity_impl!(GlobalIndex);
|
||||
entity_impl!(ArchivedGlobalIndex);
|
||||
|
||||
/// Index type of a linear memory (imported or local) inside the WebAssembly module.
|
||||
#[derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)]
|
||||
#[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))]
|
||||
#[cfg_attr(feature = "enable-rkyv", derive(RkyvSerialize, RkyvDeserialize, Archive))]
|
||||
#[cfg_attr(feature = "enable-rkyv", archive(derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)))]
|
||||
pub struct MemoryIndex(u32);
|
||||
entity_impl!(MemoryIndex);
|
||||
entity_impl!(ArchivedMemoryIndex);
|
||||
|
||||
/// Index type of a signature (imported or local) inside the WebAssembly module.
|
||||
#[derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)]
|
||||
#[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))]
|
||||
#[cfg_attr(feature = "enable-rkyv", derive(RkyvSerialize, RkyvDeserialize, Archive))]
|
||||
#[cfg_attr(feature = "enable-rkyv", archive(derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)))]
|
||||
pub struct SignatureIndex(u32);
|
||||
entity_impl!(SignatureIndex);
|
||||
entity_impl!(ArchivedSignatureIndex);
|
||||
|
||||
/// Index type of a passive data segment inside the WebAssembly module.
|
||||
#[derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)]
|
||||
#[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))]
|
||||
#[cfg_attr(feature = "enable-rkyv", derive(RkyvSerialize, RkyvDeserialize, Archive))]
|
||||
#[cfg_attr(feature = "enable-rkyv", archive(derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)))]
|
||||
pub struct DataIndex(u32);
|
||||
entity_impl!(DataIndex);
|
||||
entity_impl!(ArchivedDataIndex);
|
||||
|
||||
/// Index type of a passive element segment inside the WebAssembly module.
|
||||
#[derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)]
|
||||
#[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))]
|
||||
#[cfg_attr(feature = "enable-rkyv", derive(RkyvSerialize, RkyvDeserialize, Archive))]
|
||||
#[cfg_attr(feature = "enable-rkyv", archive(derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)))]
|
||||
pub struct ElemIndex(u32);
|
||||
entity_impl!(ElemIndex);
|
||||
entity_impl!(ArchivedElemIndex);
|
||||
|
||||
/// Index type of a custom section inside a WebAssembly module.
|
||||
#[derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)]
|
||||
#[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))]
|
||||
#[cfg_attr(feature = "enable-rkyv", derive(RkyvSerialize, RkyvDeserialize, Archive))]
|
||||
#[cfg_attr(feature = "enable-rkyv", archive(derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)))]
|
||||
pub struct CustomSectionIndex(u32);
|
||||
entity_impl!(CustomSectionIndex);
|
||||
entity_impl!(ArchivedCustomSectionIndex);
|
||||
|
||||
/// An entity to export.
|
||||
#[derive(Clone, Debug, Hash, PartialEq, Eq, PartialOrd, Ord)]
|
||||
#[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))]
|
||||
#[cfg_attr(feature = "enable-rkyv", derive(RkyvSerialize, RkyvDeserialize, Archive))]
|
||||
#[cfg_attr(feature = "enable-rkyv", archive(derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)))]
|
||||
pub enum ExportIndex {
|
||||
/// Function export.
|
||||
Function(FunctionIndex),
|
||||
@@ -107,6 +128,7 @@ pub enum ExportIndex {
|
||||
#[derive(Clone, Debug, Hash, PartialEq, Eq, PartialOrd, Ord)]
|
||||
#[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))]
|
||||
#[cfg_attr(feature = "enable-rkyv", derive(RkyvSerialize, RkyvDeserialize, Archive))]
|
||||
#[cfg_attr(feature = "enable-rkyv", archive(derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Debug)))]
|
||||
pub enum ImportIndex {
|
||||
/// Function import.
|
||||
Function(FunctionIndex),
|
||||
|
||||
Reference in New Issue
Block a user