Struct smartnoise_runtime::proto::ExponentialMechanism [−][src]
ExponentialMechanism Component
Returns an element from a finite set with probability relative to its utility.
This struct represents an abstract computation. Arguments are provided via the graph. Additional options are set via the fields on this struct. The return is the result of the exponential_mechanism on the arguments.
Arguments
utilities
- Array - Respective scores for each candidate. Total number of records must match candidates.candidates
- Array - Set from which the Exponential mechanism will return an element. Total number of records must match utilities.sensitivity
- Array - Override the sensitivity computed by the library. Rejected unlessprotect_sensitivity
is disabled.
Returns
Value
- Array - Element from the candidate set selected via the Exponential mechanism.
Fields
privacy_usage: Vec<PrivacyUsage, Global>
Object describing the type and amount of privacy to be used for the mechanism release. Length of privacy_usage must be exactly one.
Trait Implementations
impl Clone for ExponentialMechanism
[src]
pub fn clone(&self) -> ExponentialMechanism
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Component for ExponentialMechanism
[src]
pub fn propagate_property(
&self,
privacy_definition: &Option<PrivacyDefinition>,
_public_arguments: IndexMap<IndexKey, &Value, RandomState>,
properties: IndexMap<IndexKey, ValueProperties, RandomState>,
node_id: u32
) -> Result<Warnable<ValueProperties>, Error>
[src]
&self,
privacy_definition: &Option<PrivacyDefinition>,
_public_arguments: IndexMap<IndexKey, &Value, RandomState>,
properties: IndexMap<IndexKey, ValueProperties, RandomState>,
node_id: u32
) -> Result<Warnable<ValueProperties>, Error>
impl Debug for ExponentialMechanism
[src]
impl Default for ExponentialMechanism
[src]
pub fn default() -> ExponentialMechanism
[src]
impl Evaluable for ExponentialMechanism
[src]
fn evaluate(
&self,
privacy_definition: &Option<PrivacyDefinition>,
arguments: NodeArguments
) -> Result<ReleaseNode>
[src]
&self,
privacy_definition: &Option<PrivacyDefinition>,
arguments: NodeArguments
) -> Result<ReleaseNode>
impl Expandable for ExponentialMechanism
[src]
pub fn expand_component(
&self,
privacy_definition: &Option<PrivacyDefinition>,
component: &Component,
_public_arguments: &IndexMap<IndexKey, &Value, RandomState>,
properties: &IndexMap<IndexKey, ValueProperties, RandomState>,
component_id: u32,
maximum_id: u32
) -> Result<ComponentExpansion, Error>
[src]
&self,
privacy_definition: &Option<PrivacyDefinition>,
component: &Component,
_public_arguments: &IndexMap<IndexKey, &Value, RandomState>,
properties: &IndexMap<IndexKey, ValueProperties, RandomState>,
component_id: u32,
maximum_id: u32
) -> Result<ComponentExpansion, Error>
impl Mechanism for ExponentialMechanism
[src]
pub fn get_privacy_usage(
&self,
privacy_definition: &PrivacyDefinition,
release_usage: Option<&Vec<PrivacyUsage, Global>>,
properties: &IndexMap<IndexKey, ValueProperties, RandomState>
) -> Result<Option<Vec<PrivacyUsage, Global>>, Error>
[src]
&self,
privacy_definition: &PrivacyDefinition,
release_usage: Option<&Vec<PrivacyUsage, Global>>,
properties: &IndexMap<IndexKey, ValueProperties, RandomState>
) -> Result<Option<Vec<PrivacyUsage, Global>>, Error>
impl Message for ExponentialMechanism
[src]
pub fn encode_raw<B>(&self, buf: &mut B) where
B: BufMut,
[src]
B: BufMut,
pub fn merge_field<B>(
&mut self,
tag: u32,
wire_type: WireType,
buf: &mut B,
ctx: DecodeContext
) -> Result<(), DecodeError> where
B: Buf,
[src]
&mut self,
tag: u32,
wire_type: WireType,
buf: &mut B,
ctx: DecodeContext
) -> Result<(), DecodeError> where
B: Buf,
pub fn encoded_len(&self) -> usize
[src]
pub fn clear(&mut self)
[src]
pub fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError> where
B: BufMut,
[src]
B: BufMut,
pub fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError> where
B: BufMut,
[src]
B: BufMut,
pub fn decode<B>(buf: B) -> Result<Self, DecodeError> where
Self: Default,
B: Buf,
[src]
Self: Default,
B: Buf,
pub fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError> where
Self: Default,
B: Buf,
[src]
Self: Default,
B: Buf,
pub fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError> where
B: Buf,
[src]
B: Buf,
pub fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError> where
B: Buf,
[src]
B: Buf,
impl PartialEq<ExponentialMechanism> for ExponentialMechanism
[src]
pub fn eq(&self, other: &ExponentialMechanism) -> bool
[src]
pub fn ne(&self, other: &ExponentialMechanism) -> bool
[src]
impl StructuralPartialEq for ExponentialMechanism
[src]
Auto Trait Implementations
impl RefUnwindSafe for ExponentialMechanism
impl Send for ExponentialMechanism
impl Sync for ExponentialMechanism
impl Unpin for ExponentialMechanism
impl UnwindSafe for ExponentialMechanism
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Az for T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> CheckedAs for T
[src]
pub fn checked_as<Dst>(self) -> Option<Dst> where
T: CheckedCast<Dst>,
[src]
T: CheckedCast<Dst>,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> OverflowingAs for T
[src]
pub fn overflowing_as<Dst>(self) -> (Dst, bool) where
T: OverflowingCast<Dst>,
[src]
T: OverflowingCast<Dst>,
impl<T> SaturatingAs for T
[src]
pub fn saturating_as<Dst>(self) -> Dst where
T: SaturatingCast<Dst>,
[src]
T: SaturatingCast<Dst>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> UnwrappedAs for T
[src]
pub fn unwrapped_as<Dst>(self) -> Dst where
T: UnwrappedCast<Dst>,
[src]
T: UnwrappedCast<Dst>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src]
V: MultiLane<T>,
impl<T> WrappingAs for T
[src]
pub fn wrapping_as<Dst>(self) -> Dst where
T: WrappingCast<Dst>,
[src]
T: WrappingCast<Dst>,