pub struct ResidencyRequirement {
pub allowed_regions: Vec<String>,
pub prohibited_regions: Vec<String>,
pub data_sovereign: bool,
}Expand description
Region constraints attached to classified data.
Fields§
§allowed_regions: Vec<String>Regions in which the data may be stored or processed. Empty means
unrestricted unless data_sovereign is true.
prohibited_regions: Vec<String>Regions that are forbidden even when they appear in the allow list.
data_sovereign: boolRequires a sovereign deployment and therefore a non-empty allow list.
Implementations§
Source§impl ResidencyRequirement
impl ResidencyRequirement
Sourcepub fn unrestricted() -> Self
pub fn unrestricted() -> Self
Creates an unconstrained residency requirement.
Sourcepub fn allowed_in<I, S>(regions: I) -> Self
pub fn allowed_in<I, S>(regions: I) -> Self
Creates a requirement allowing only the supplied regions.
Sourcepub fn sovereign<I, S>(regions: I) -> Self
pub fn sovereign<I, S>(regions: I) -> Self
Creates a sovereign requirement for the supplied regions.
Sourcepub fn with_allowed_region(self, region: impl Into<String>) -> Self
pub fn with_allowed_region(self, region: impl Into<String>) -> Self
Adds one allowed region.
Sourcepub fn with_prohibited_region(self, region: impl Into<String>) -> Self
pub fn with_prohibited_region(self, region: impl Into<String>) -> Self
Adds one prohibited region.
Sourcepub const fn with_sovereignty(self, sovereign: bool) -> Self
pub const fn with_sovereignty(self, sovereign: bool) -> Self
Marks the requirement as sovereign.
Sourcepub fn allows_region(&self, region: &str) -> bool
pub fn allows_region(&self, region: &str) -> bool
Checks whether processing in region is permitted.
Trait Implementations§
Source§impl Clone for ResidencyRequirement
impl Clone for ResidencyRequirement
Source§impl Debug for ResidencyRequirement
impl Debug for ResidencyRequirement
Source§impl Default for ResidencyRequirement
impl Default for ResidencyRequirement
Source§impl<'de> Deserialize<'de> for ResidencyRequirement
impl<'de> Deserialize<'de> for ResidencyRequirement
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ResidencyRequirement
Source§impl PartialEq for ResidencyRequirement
impl PartialEq for ResidencyRequirement
Source§impl Serialize for ResidencyRequirement
impl Serialize for ResidencyRequirement
impl StructuralPartialEq for ResidencyRequirement
Auto Trait Implementations§
impl Forget for ResidencyRequirement
impl Freeze for ResidencyRequirement
impl Move for ResidencyRequirement
impl RefUnwindSafe for ResidencyRequirement
impl Send for ResidencyRequirement
impl Sync for ResidencyRequirement
impl Unpin for ResidencyRequirement
impl UnsafeUnpin for ResidencyRequirement
impl UnwindSafe for ResidencyRequirement
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more