From b3608b296844db05e33cf881e2ebadcc791dde23 Mon Sep 17 00:00:00 2001 From: Janis Date: Sat, 17 Jun 2023 16:51:21 +0200 Subject: [PATCH] use existing functions for parsing property - this means not being able to resolve the type of the field is a hard error --- src/sdk/process.rs | 22 ++-------------------- 1 file changed, 2 insertions(+), 20 deletions(-) diff --git a/src/sdk/process.rs b/src/sdk/process.rs index c971e09..8a7a922 100644 --- a/src/sdk/process.rs +++ b/src/sdk/process.rs @@ -105,26 +105,8 @@ impl ClassMethod { AnyField::Property(prop) => Some(prop), _ => None, }) - .map(|prop| -> anyhow::Result> { - let param = ClassField { - offset: *prop.offset() as u32, - size: *prop.element_size() as u32, - name: prop.get_name().context("failed to get property name")?, - flags: *prop.property_flags(), - ty: if let Ok(ty) = resolve_type(prop) { - ty - } else { - log::warn!("skipping field {} with offset 0x{:x}", prop, prop.offset()); - return Ok(None); - }, - }; - - Ok(Some(param)) - }) - .fold_ok(Vec::new(), |mut acc, field| { - acc.extend(field); - acc - })?; + .map(|prop| ClassField::from_uprop(prop)) + .collect::>>()?; Ok(ClassMethod { name,