use crate::Span;
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct Export {
pub span: Span,
pub name: String,
pub kind: ExternalKind,
pub index: u32,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum ExternalKind {
Func,
Table,
Memory,
Global,
Tag,
}
impl From<wasmparser::ExternalKind> for ExternalKind {
fn from(k: wasmparser::ExternalKind) -> Self {
match k {
wasmparser::ExternalKind::Func | wasmparser::ExternalKind::FuncExact => {
ExternalKind::Func
}
wasmparser::ExternalKind::Table => ExternalKind::Table,
wasmparser::ExternalKind::Memory => ExternalKind::Memory,
wasmparser::ExternalKind::Global => ExternalKind::Global,
wasmparser::ExternalKind::Tag => ExternalKind::Tag,
}
}
}