diff --git a/lib/interface-types/src/interpreter/wasm/values.rs b/lib/interface-types/src/interpreter/wasm/values.rs index 472be9809..3895aa06e 100644 --- a/lib/interface-types/src/interpreter/wasm/values.rs +++ b/lib/interface-types/src/interpreter/wasm/values.rs @@ -69,9 +69,7 @@ impl From<&InterfaceValue> for InterfaceType { //InterfaceValue::Anyref(_) => Self::Anyref, InterfaceValue::I32(_) => Self::I32, InterfaceValue::I64(_) => Self::I64, - InterfaceValue::Record(values) => Self::Record(RecordType { - fields: values.iter().map(Into::into).collect(), - }), + InterfaceValue::Record(values) => Self::Record(values.into()), } } } @@ -82,6 +80,14 @@ impl Default for InterfaceValue { } } +impl From<&Vec> for RecordType { + fn from(values: &Vec) -> Self { + RecordType { + fields: values.iter().map(Into::into).collect(), + } + } +} + /// Represents a native type supported by WIT. pub trait NativeType { /// The associated interface type that maps to the native type.