#[non_exhaustive]
pub struct CreateExperimentInput { pub project: Option<String>, pub name: Option<String>, pub description: Option<String>, pub treatments: Option<Vec<TreatmentConfig>>, pub metric_goals: Option<Vec<MetricGoalConfig>>, pub randomization_salt: Option<String>, pub sampling_rate: Option<i64>, pub online_ab_config: Option<OnlineAbConfig>, pub segment: Option<String>, pub tags: Option<HashMap<String, String>>, }

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§project: Option<String>

The name or ARN of the project that you want to create the new experiment in.

§name: Option<String>

A name for the new experiment.

§description: Option<String>

An optional description of the experiment.

§treatments: Option<Vec<TreatmentConfig>>

An array of structures that describe the configuration of each feature variation used in the experiment.

§metric_goals: Option<Vec<MetricGoalConfig>>

An array of structures that defines the metrics used for the experiment, and whether a higher or lower value for each metric is the goal.

§randomization_salt: Option<String>

When Evidently assigns a particular user session to an experiment, it must use a randomization ID to determine which variation the user session is served. This randomization ID is a combination of the entity ID and randomizationSalt. If you omit randomizationSalt, Evidently uses the experiment name as the randomizationSalt.

§sampling_rate: Option<i64>

The portion of the available audience that you want to allocate to this experiment, in thousandths of a percent. The available audience is the total audience minus the audience that you have allocated to overrides or current launches of this feature.

This is represented in thousandths of a percent. For example, specify 10,000 to allocate 10% of the available audience.

§online_ab_config: Option<OnlineAbConfig>

A structure that contains the configuration of which variation to use as the "control" version. tThe "control" version is used for comparison with other variations. This structure also specifies how much experiment traffic is allocated to each variation.

§segment: Option<String>

Specifies an audience segment to use in the experiment. When a segment is used in an experiment, only user sessions that match the segment pattern are used in the experiment.

§tags: Option<HashMap<String, String>>

Assigns one or more tags (key-value pairs) to the experiment.

Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.

Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.

You can associate as many as 50 tags with an experiment.

For more information, see Tagging Amazon Web Services resources.

Implementations§

source§

impl CreateExperimentInput

source

pub fn project(&self) -> Option<&str>

The name or ARN of the project that you want to create the new experiment in.

source

pub fn name(&self) -> Option<&str>

A name for the new experiment.

source

pub fn description(&self) -> Option<&str>

An optional description of the experiment.

source

pub fn treatments(&self) -> &[TreatmentConfig]

An array of structures that describe the configuration of each feature variation used in the experiment.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .treatments.is_none().

source

pub fn metric_goals(&self) -> &[MetricGoalConfig]

An array of structures that defines the metrics used for the experiment, and whether a higher or lower value for each metric is the goal.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .metric_goals.is_none().

source

pub fn randomization_salt(&self) -> Option<&str>

When Evidently assigns a particular user session to an experiment, it must use a randomization ID to determine which variation the user session is served. This randomization ID is a combination of the entity ID and randomizationSalt. If you omit randomizationSalt, Evidently uses the experiment name as the randomizationSalt.

source

pub fn sampling_rate(&self) -> Option<i64>

The portion of the available audience that you want to allocate to this experiment, in thousandths of a percent. The available audience is the total audience minus the audience that you have allocated to overrides or current launches of this feature.

This is represented in thousandths of a percent. For example, specify 10,000 to allocate 10% of the available audience.

source

pub fn online_ab_config(&self) -> Option<&OnlineAbConfig>

A structure that contains the configuration of which variation to use as the "control" version. tThe "control" version is used for comparison with other variations. This structure also specifies how much experiment traffic is allocated to each variation.

source

pub fn segment(&self) -> Option<&str>

Specifies an audience segment to use in the experiment. When a segment is used in an experiment, only user sessions that match the segment pattern are used in the experiment.

source

pub fn tags(&self) -> Option<&HashMap<String, String>>

Assigns one or more tags (key-value pairs) to the experiment.

Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.

Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.

You can associate as many as 50 tags with an experiment.

For more information, see Tagging Amazon Web Services resources.

source§

impl CreateExperimentInput

source

pub fn builder() -> CreateExperimentInputBuilder

Creates a new builder-style object to manufacture CreateExperimentInput.

Trait Implementations§

source§

impl Clone for CreateExperimentInput

source§

fn clone(&self) -> CreateExperimentInput

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for CreateExperimentInput

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for CreateExperimentInput

source§

fn eq(&self, other: &CreateExperimentInput) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for CreateExperimentInput

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoEither for T

source§

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 more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more