// Copyright 2020 IOTA Stiftung
// SPDX-License-Identifier: Apache-2.0

// (Re-)generated by schema tool
// >>>> DO NOT CHANGE THIS FILE! <<<<
// Change the json schema instead

#![allow(dead_code)]
#![allow(unused_imports)]

use wasmlib::*;

use crate::*;

#[derive(Clone)]
pub struct ImmutableSoloTutorialState {
	pub(crate) proxy: Proxy,
}

impl ImmutableSoloTutorialState {
    pub fn str(&self) -> ScImmutableString {
		ScImmutableString::new(self.proxy.root(STATE_STR))
	}
}

#[derive(Clone)]
pub struct MutableSoloTutorialState {
	pub(crate) proxy: Proxy,
}

impl MutableSoloTutorialState {
    pub fn as_immutable(&self) -> ImmutableSoloTutorialState {
		ImmutableSoloTutorialState { proxy: self.proxy.root("") }
	}

    pub fn str(&self) -> ScMutableString {
		ScMutableString::new(self.proxy.root(STATE_STR))
	}
}
