minco_contract/
authorization.rs1#[derive(Debug, Clone, Copy, PartialEq, Eq)]
5pub struct ContractAuthorizationAlternative {
6 pub scopes: &'static [&'static str],
7}
8
9impl ContractAuthorizationAlternative {
10 #[must_use]
11 pub const fn new(scopes: &'static [&'static str]) -> Self {
12 Self { scopes }
13 }
14}
15
16#[derive(Debug, Clone, Copy, PartialEq, Eq)]
18pub struct ContractAuthorizationPolicy {
19 pub operation_id: &'static str,
20 pub anonymous: bool,
21 pub permissions: &'static [&'static str],
22 pub alternatives: &'static [ContractAuthorizationAlternative],
23}
24
25impl ContractAuthorizationPolicy {
26 #[must_use]
27 pub const fn new(
28 operation_id: &'static str,
29 anonymous: bool,
30 permissions: &'static [&'static str],
31 alternatives: &'static [ContractAuthorizationAlternative],
32 ) -> Self {
33 Self {
34 operation_id,
35 anonymous,
36 permissions,
37 alternatives,
38 }
39 }
40}