Splitting vweb into multiple modules
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
use wasm_bindgen::prelude::wasm_bindgen;
|
||||
use vasm_core::parse_error::AssembleError;
|
||||
|
||||
#[wasm_bindgen(inspectable, getter_with_clone)]
|
||||
#[derive(Serialize, Deserialize)]
|
||||
pub struct JsVasmError {
|
||||
pub line_number: usize,
|
||||
pub message: String
|
||||
}
|
||||
|
||||
impl From<AssembleError> for JsVasmError {
|
||||
fn from(value: AssembleError) -> Self {
|
||||
let line = match value.clone() {
|
||||
AssembleError::ParseError(loc, _) => loc.line_num,
|
||||
AssembleError::EquResolveError(loc, _, _) => loc.line_num,
|
||||
AssembleError::EquDuplicateError(loc, _) => loc.line_num,
|
||||
AssembleError::OrgResolveError(loc, _) => loc.line_num,
|
||||
AssembleError::ArgError(loc, _) => loc.line_num,
|
||||
AssembleError::NoCode => 0,
|
||||
AssembleError::IncludeError(loc, _) => loc.line_num,
|
||||
AssembleError::FileError(_) => 0,
|
||||
AssembleError::MacroError(loc) => loc.line_num,
|
||||
};
|
||||
|
||||
return JsVasmError {
|
||||
line_number: line,
|
||||
message: value.message()
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user