aboutsummaryrefslogtreecommitdiff
path: root/src/classes/assetinfo.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/classes/assetinfo.rs')
-rw-r--r--src/classes/assetinfo.rs15
1 files changed, 5 insertions, 10 deletions
diff --git a/src/classes/assetinfo.rs b/src/classes/assetinfo.rs
index 9fad90a..01c4530 100644
--- a/src/classes/assetinfo.rs
+++ b/src/classes/assetinfo.rs
@@ -1,5 +1,5 @@
-use super::{FromValue, gameobject::GameObject, pptr::PPtr};
-use crate::object::Value;
+use super::{gameobject::GameObject, pptr::PPtr};
+use crate::object::{Value, parser::FromValue};
use anyhow::Result;
use serde::Serialize;
@@ -13,14 +13,9 @@ impl FromValue for AssetInfo {
fn from_value(v: Value) -> Result<Self> {
let mut fields = v.as_class("AssetInfo").unwrap();
Ok(AssetInfo {
- preload_index: fields["preloadIndex"].as_i32().unwrap(),
- preload_size: fields["preloadSize"].as_i32().unwrap(),
- asset: fields
- .remove("asset")
- .unwrap()
- .parse::<PPtr>()
- .unwrap()
- .cast(),
+ preload_index: fields.field("preloadIndex")?,
+ preload_size: fields.field("preloadSize")?,
+ asset: fields.field("asset")?,
})
}
}