cml_chain_wasm/auxdata/
utils.rs1use crate::{NativeScriptList, PlutusV1ScriptList, PlutusV2ScriptList};
2use wasm_bindgen::prelude::wasm_bindgen;
3
4use super::{AuxiliaryData, Metadata};
5
6#[wasm_bindgen]
7impl AuxiliaryData {
8 pub fn new() -> Self {
9 cml_chain::auxdata::AuxiliaryData::new().into()
10 }
11
12 pub fn metadata(&self) -> Option<Metadata> {
13 self.0.metadata().map(|m| m.clone().into())
14 }
15
16 pub fn native_scripts(&self) -> Option<NativeScriptList> {
17 self.0.native_scripts().cloned().map(Into::into)
18 }
19
20 pub fn plutus_v1_scripts(&self) -> Option<PlutusV1ScriptList> {
21 self.0.plutus_v1_scripts().cloned().map(Into::into)
22 }
23
24 pub fn plutus_v2_scripts(&self) -> Option<PlutusV2ScriptList> {
25 self.0.plutus_v2_scripts().cloned().map(Into::into)
26 }
27
28 pub fn add_metadata(&mut self, other: &Metadata) {
30 self.0.add_metadata(other.clone().into())
31 }
32
33 pub fn add_native_scripts(&mut self, scripts: &NativeScriptList) {
35 self.0.add_native_scripts(scripts.clone().into())
36 }
37
38 pub fn add_plutus_v1_scripts(&mut self, scripts: &PlutusV1ScriptList) {
40 self.0.add_plutus_v1_scripts(scripts.clone().into())
41 }
42
43 pub fn add_plutus_v2_scripts(&mut self, scripts: &PlutusV2ScriptList) {
45 self.0.add_plutus_v2_scripts(scripts.clone().into())
46 }
47
48 pub fn add(&mut self, other: &AuxiliaryData) {
53 self.0.add(other.clone().into())
54 }
55}