#[non_exhaustive]pub struct PrivacyPolicy {
pub join_restriction_policy: Option<JoinRestrictionPolicy>,
pub privacy_policy: Option<PrivacyPolicy>,
/* private fields */
}Expand description
Represents privacy policy that contains the privacy requirements specified by the data owner. Currently, this is only supported on views.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.join_restriction_policy: Option<JoinRestrictionPolicy>Optional. Join restriction policy is outside of the one of policies, since this policy can be set along with other policies. This policy gives data providers the ability to enforce joins on the ‘join_allowed_columns’ when data is queried from a privacy protected view.
privacy_policy: Option<PrivacyPolicy>Privacy policy associated with this requirement specification. Only one of the privacy methods is allowed per data source object.
Implementations§
Source§impl PrivacyPolicy
impl PrivacyPolicy
Sourcepub fn set_join_restriction_policy<T>(self, v: T) -> Selfwhere
T: Into<JoinRestrictionPolicy>,
pub fn set_join_restriction_policy<T>(self, v: T) -> Selfwhere
T: Into<JoinRestrictionPolicy>,
Sets the value of join_restriction_policy.
§Example
use google_cloud_bigquery_v2::model::JoinRestrictionPolicy;
let x = PrivacyPolicy::new().set_join_restriction_policy(JoinRestrictionPolicy::default()/* use setters */);Sourcepub fn set_or_clear_join_restriction_policy<T>(self, v: Option<T>) -> Selfwhere
T: Into<JoinRestrictionPolicy>,
pub fn set_or_clear_join_restriction_policy<T>(self, v: Option<T>) -> Selfwhere
T: Into<JoinRestrictionPolicy>,
Sets or clears the value of join_restriction_policy.
§Example
use google_cloud_bigquery_v2::model::JoinRestrictionPolicy;
let x = PrivacyPolicy::new().set_or_clear_join_restriction_policy(Some(JoinRestrictionPolicy::default()/* use setters */));
let x = PrivacyPolicy::new().set_or_clear_join_restriction_policy(None::<JoinRestrictionPolicy>);Sourcepub fn set_privacy_policy<T: Into<Option<PrivacyPolicy>>>(self, v: T) -> Self
pub fn set_privacy_policy<T: Into<Option<PrivacyPolicy>>>(self, v: T) -> Self
Sets the value of privacy_policy.
Note that all the setters affecting privacy_policy are mutually
exclusive.
§Example
use google_cloud_bigquery_v2::model::AggregationThresholdPolicy;
let x = PrivacyPolicy::new().set_privacy_policy(Some(
google_cloud_bigquery_v2::model::privacy_policy::PrivacyPolicy::AggregationThresholdPolicy(AggregationThresholdPolicy::default().into())));Sourcepub fn aggregation_threshold_policy(
&self,
) -> Option<&Box<AggregationThresholdPolicy>>
pub fn aggregation_threshold_policy( &self, ) -> Option<&Box<AggregationThresholdPolicy>>
The value of privacy_policy
if it holds a AggregationThresholdPolicy, None if the field is not set or
holds a different branch.
Sourcepub fn set_aggregation_threshold_policy<T: Into<Box<AggregationThresholdPolicy>>>(
self,
v: T,
) -> Self
pub fn set_aggregation_threshold_policy<T: Into<Box<AggregationThresholdPolicy>>>( self, v: T, ) -> Self
Sets the value of privacy_policy
to hold a AggregationThresholdPolicy.
Note that all the setters affecting privacy_policy are
mutually exclusive.
§Example
use google_cloud_bigquery_v2::model::AggregationThresholdPolicy;
let x = PrivacyPolicy::new().set_aggregation_threshold_policy(AggregationThresholdPolicy::default()/* use setters */);
assert!(x.aggregation_threshold_policy().is_some());
assert!(x.differential_privacy_policy().is_none());Sourcepub fn differential_privacy_policy(
&self,
) -> Option<&Box<DifferentialPrivacyPolicy>>
pub fn differential_privacy_policy( &self, ) -> Option<&Box<DifferentialPrivacyPolicy>>
The value of privacy_policy
if it holds a DifferentialPrivacyPolicy, None if the field is not set or
holds a different branch.
Sourcepub fn set_differential_privacy_policy<T: Into<Box<DifferentialPrivacyPolicy>>>(
self,
v: T,
) -> Self
pub fn set_differential_privacy_policy<T: Into<Box<DifferentialPrivacyPolicy>>>( self, v: T, ) -> Self
Sets the value of privacy_policy
to hold a DifferentialPrivacyPolicy.
Note that all the setters affecting privacy_policy are
mutually exclusive.
§Example
use google_cloud_bigquery_v2::model::DifferentialPrivacyPolicy;
let x = PrivacyPolicy::new().set_differential_privacy_policy(DifferentialPrivacyPolicy::default()/* use setters */);
assert!(x.differential_privacy_policy().is_some());
assert!(x.aggregation_threshold_policy().is_none());Trait Implementations§
Source§impl Clone for PrivacyPolicy
impl Clone for PrivacyPolicy
Source§fn clone(&self) -> PrivacyPolicy
fn clone(&self) -> PrivacyPolicy
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PrivacyPolicy
impl Debug for PrivacyPolicy
Source§impl Default for PrivacyPolicy
impl Default for PrivacyPolicy
Source§fn default() -> PrivacyPolicy
fn default() -> PrivacyPolicy
Source§impl Message for PrivacyPolicy
impl Message for PrivacyPolicy
Source§impl PartialEq for PrivacyPolicy
impl PartialEq for PrivacyPolicy
impl StructuralPartialEq for PrivacyPolicy
Auto Trait Implementations§
impl Freeze for PrivacyPolicy
impl RefUnwindSafe for PrivacyPolicy
impl Send for PrivacyPolicy
impl Sync for PrivacyPolicy
impl Unpin for PrivacyPolicy
impl UnsafeUnpin for PrivacyPolicy
impl UnwindSafe for PrivacyPolicy
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
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<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request