use core::fmt; use serde::{Deserialize, Serialize}; abi::call_ids! { #[derive(Clone, Copy, Debug, PartialEq)] pub enum CallId { Attest = "attest", KeyBadge = "key-badge", KeyBind = "key-bind", Create = "create", Confirm = "confirm", Offerings(usize) = "off", UserData = "user-data", Vm = "vm", AttestRfp = "attest-rfp", Rfp = "rfp", SubmitRfp(usize) = "submit", Bid(usize) = "bid", Scope(usize) = "scope", Full(usize) = "full", AcceptPolicy = "policy", AttestAccept = "attest-accept", Accept = "accept", SubmitAccept = "submit-accept", Receipt = "receipt", Progress = "progress", Report(usize) = "g", Page(usize) = "page", GuestEvent(usize) = "e", Guest = "guest", Watch = "watch", Shell = "shell", Hold = "hold", AttestPayload = "attest-payload", CreatePayload = "payload", AttestEvent = "attest-event", CreateEvent = "event", SubmitEvent = "submit-event", Term = "term", Delete(usize) = "rm", } } /// The policy hook's mode: scope judges the bidder, full the bid itself. #[derive(Clone, Copy, PartialEq, Serialize, Deserialize)] #[serde(rename_all = "lowercase")] pub enum Mode { Scope, Full, } impl fmt::Display for Mode { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { f.write_str(match self { Mode::Scope => "scope", Mode::Full => "full", }) } }