Skip to main content

axone_law_stone/
state.rs

1use serde::{Deserialize, Serialize};
2
3use crate::msg::ProgramResponse;
4use axone_objectarium_client::ObjectRef;
5use cw_storage_plus::{Item, Map};
6
7#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Eq)]
8pub struct LawStone {
9    pub broken: bool,
10    pub law: ObjectRef,
11}
12
13impl From<LawStone> for ProgramResponse {
14    fn from(value: LawStone) -> ProgramResponse {
15        ProgramResponse {
16            object_id: value.law.object_id,
17            storage_address: value.law.storage_address,
18        }
19    }
20}
21
22pub const PROGRAM: Item<LawStone> = Item::new("program");
23
24pub const DEPENDENCIES: Map<&str, ObjectRef> = Map::new("dependencies");