aboutsummaryrefslogtreecommitdiff
path: root/src/classes/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/classes/mod.rs')
-rw-r--r--src/classes/mod.rs9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/classes/mod.rs b/src/classes/mod.rs
index be2d5da..f7b89cb 100644
--- a/src/classes/mod.rs
+++ b/src/classes/mod.rs
@@ -1,9 +1,10 @@
pub mod assetinfo;
pub mod gameobject;
pub mod pptr;
+pub mod streaminginfo;
+pub mod texture2d;
pub mod transform;
pub mod vectors;
-pub mod texture2d;
use crate::object::Value;
use anyhow::Result;
@@ -12,6 +13,8 @@ use gameobject::GameObject;
use pptr::PPtr;
use serde::Serialize;
use std::collections::BTreeMap;
+use streaminginfo::StreamingInfo;
+use texture2d::Texture2D;
use transform::Transform;
#[derive(Debug, Serialize)]
@@ -20,6 +23,8 @@ pub enum HValue {
GameObject(GameObject),
Transform(Transform),
PPtr(PPtr),
+ Texture2D(Texture2D),
+ StreamingInfo(StreamingInfo),
Pair(Box<HValue>, Box<HValue>),
Value([Value; 1]),
@@ -41,6 +46,8 @@ impl HValue {
"AssetInfo" => Self::AssetInfo(AssetInfo::from_value(value)?),
"GameObject" => Self::GameObject(GameObject::from_value(value)?),
"Transform" => Self::Transform(Transform::from_value(value)?),
+ "Texture2D" => Self::Texture2D(Texture2D::from_value(value)?),
+ "StreamingInfo" => Self::StreamingInfo(StreamingInfo::from_value(value)?),
_ => {
let Value::Object { class, fields } = value else {
unreachable!()