pub struct AbTestRunner { /* private fields */ }Expand description
Thread-safe legacy two-variant A/B test runner.
Implementations§
Source§impl AbTestRunner
impl AbTestRunner
Sourcepub fn register(&self, config: AbTestConfig)
pub fn register(&self, config: AbTestConfig)
Register a new experiment.
Sourcepub fn assign(&self, name: &str, user_id: &str) -> Option<Variant>
pub fn assign(&self, name: &str, user_id: &str) -> Option<Variant>
Assign a user deterministically to a variant.
Sourcepub fn record_observation(&self, name: &str, variant: Variant, score: f64)
pub fn record_observation(&self, name: &str, variant: Variant, score: f64)
Record a metric observation for the given variant.
Sourcepub fn analyse(&self, name: &str) -> Option<AbTestResult>
pub fn analyse(&self, name: &str) -> Option<AbTestResult>
Run Welch’s t-test on the accumulated observations.
Sourcepub fn sample_counts(&self, name: &str) -> Option<(usize, usize)>
pub fn sample_counts(&self, name: &str) -> Option<(usize, usize)>
Return sample counts for both variants.
Sourcepub fn experiment_names(&self) -> Vec<String>
pub fn experiment_names(&self) -> Vec<String>
Return names of all registered experiments.
Trait Implementations§
Source§impl Clone for AbTestRunner
impl Clone for AbTestRunner
Source§fn clone(&self) -> AbTestRunner
fn clone(&self) -> AbTestRunner
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Default for AbTestRunner
impl Default for AbTestRunner
Source§fn default() -> AbTestRunner
fn default() -> AbTestRunner
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for AbTestRunner
impl !UnwindSafe for AbTestRunner
impl Freeze for AbTestRunner
impl Send for AbTestRunner
impl Sync for AbTestRunner
impl Unpin for AbTestRunner
impl UnsafeUnpin for AbTestRunner
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> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
Wrap the input message
T in a tonic::Request