From ae5e168f2d889a749c8e90f7bd8838ae87d13d50 Mon Sep 17 00:00:00 2001 From: Joshua Goins Date: Sat, 12 Jul 2025 07:43:01 -0400 Subject: [PATCH] Put new rusqlite usage behind #[cfg] This should fix the WebAssembly build. --- src/common/workdefinitions/chara_make.rs | 8 ++++---- src/common/workdefinitions/client_select_data.rs | 9 ++++----- src/inventory/mod.rs | 6 +++--- src/ipc/zone/common_spawn.rs | 8 ++++---- 4 files changed, 15 insertions(+), 16 deletions(-) diff --git a/src/common/workdefinitions/chara_make.rs b/src/common/workdefinitions/chara_make.rs index b5cf427..3062216 100644 --- a/src/common/workdefinitions/chara_make.rs +++ b/src/common/workdefinitions/chara_make.rs @@ -1,4 +1,3 @@ -use rusqlite::types::{FromSql, FromSqlResult, ValueRef}; use serde_json::{Value, json}; use crate::common::CustomizeData; @@ -14,9 +13,10 @@ pub struct CharaMake { pub unk2: i32, } -impl FromSql for CharaMake { - fn column_result(value: ValueRef<'_>) -> FromSqlResult { - Ok(CharaMake::from_json(&String::column_result(value)?)) +#[cfg(not(target_family = "wasm"))] +impl rusqlite::types::FromSql for CharaMake { + fn column_result(value: rusqlite::types::ValueRef<'_>) -> rusqlite::types::FromSqlResult { + Ok(Self::from_json(&String::column_result(value)?)) } } diff --git a/src/common/workdefinitions/client_select_data.rs b/src/common/workdefinitions/client_select_data.rs index ec60194..de6f48d 100644 --- a/src/common/workdefinitions/client_select_data.rs +++ b/src/common/workdefinitions/client_select_data.rs @@ -1,4 +1,3 @@ -use rusqlite::types::{FromSql, FromSqlResult, ValueRef}; use serde::{Deserialize, Serialize}; use serde_json::json; @@ -28,10 +27,10 @@ impl TryFrom for RemakeMode { } } } - -impl FromSql for RemakeMode { - fn column_result(value: ValueRef<'_>) -> FromSqlResult { - Ok(RemakeMode::try_from(i32::column_result(value)?).unwrap()) +#[cfg(not(target_family = "wasm"))] +impl rusqlite::types::FromSql for RemakeMode { + fn column_result(value: rusqlite::types::ValueRef<'_>) -> rusqlite::types::FromSqlResult { + Ok(Self::try_from(i32::column_result(value)?).unwrap()) } } diff --git a/src/inventory/mod.rs b/src/inventory/mod.rs index 9357fe0..40d2364 100644 --- a/src/inventory/mod.rs +++ b/src/inventory/mod.rs @@ -1,7 +1,6 @@ use crate::common::GameData; use icarus::{ClassJob::ClassJobSheet, Race::RaceSheet}; use physis::common::Language; -use rusqlite::types::{FromSql, FromSqlResult, ValueRef}; use serde::{Deserialize, Serialize}; use crate::ipc::zone::ItemOperation; @@ -78,8 +77,9 @@ impl<'a> IntoIterator for &'a Inventory { } } -impl FromSql for Inventory { - fn column_result(value: ValueRef<'_>) -> FromSqlResult { +#[cfg(not(target_family = "wasm"))] +impl rusqlite::types::FromSql for Inventory { + fn column_result(value: rusqlite::types::ValueRef<'_>) -> rusqlite::types::FromSqlResult { Ok(serde_json::from_str(&String::column_result(value)?).unwrap()) } } diff --git a/src/ipc/zone/common_spawn.rs b/src/ipc/zone/common_spawn.rs index db73e07..856c8dc 100644 --- a/src/ipc/zone/common_spawn.rs +++ b/src/ipc/zone/common_spawn.rs @@ -5,7 +5,6 @@ use crate::common::{ read_string, write_quantized_rotation, write_string, }; use bitflags::bitflags; -use rusqlite::types::{FromSql, FromSqlResult, ValueRef}; use super::StatusEffect; @@ -116,9 +115,10 @@ pub enum GameMasterRank { Debug = 90, } -impl FromSql for GameMasterRank { - fn column_result(value: ValueRef<'_>) -> FromSqlResult { - Ok(GameMasterRank::try_from(u8::column_result(value)?).unwrap()) +#[cfg(not(target_family = "wasm"))] +impl rusqlite::types::FromSql for GameMasterRank { + fn column_result(value: rusqlite::types::ValueRef<'_>) -> rusqlite::types::FromSqlResult { + Ok(Self::try_from(u8::column_result(value)?).unwrap()) } }