pub struct BehaviorSimulator {
pub config: BehaviorConfig,
/* private fields */
}Fields§
§config: BehaviorConfigImplementations§
Source§impl BehaviorSimulator
impl BehaviorSimulator
pub fn new(seed: u64) -> BehaviorSimulator
pub fn with_config(seed: u64, config: BehaviorConfig) -> BehaviorSimulator
pub fn seed(&self) -> u64
Sourcepub fn generate_human_mouse_path(
&self,
start: (f64, f64),
end: (f64, f64),
target_width: f64,
) -> Vec<(f64, f64, f64)>
pub fn generate_human_mouse_path( &self, start: (f64, f64), end: (f64, f64), target_width: f64, ) -> Vec<(f64, f64, f64)>
Generate human-like mouse path using cubic Bezier curves. Returns (x, y, time_ms) tuples with Fitts’ Law timing and ease-in-out speed.
Sourcepub fn generate_mouse_path(
&self,
x1: f64,
y1: f64,
x2: f64,
y2: f64,
steps: usize,
) -> Vec<(f64, f64)>
pub fn generate_mouse_path( &self, x1: f64, y1: f64, x2: f64, y2: f64, steps: usize, ) -> Vec<(f64, f64)>
Legacy API — delegates to cubic Bezier internally. Returns (x, y) pairs for backward compatibility.
pub fn generate_click_sequence( &self, x: f64, y: f64, target_width: f64, ) -> Vec<ClickEvent>
pub fn generate_double_click_sequence( &self, x: f64, y: f64, target_width: f64, ) -> Vec<ClickEvent>
Sourcepub fn generate_human_typing(&self, text: &str) -> Vec<TypingEvent>
pub fn generate_human_typing(&self, text: &str) -> Vec<TypingEvent>
Generate human-like typing events for the given text.
Sourcepub fn generate_typing_delays(&self, count: usize) -> Vec<u64>
pub fn generate_typing_delays(&self, count: usize) -> Vec<u64>
Legacy API — simple typing delays for backward compatibility.
Sourcepub fn generate_inertia_scroll(&self, initial_speed: f64) -> Vec<f64>
pub fn generate_inertia_scroll(&self, initial_speed: f64) -> Vec<f64>
Generate inertia scroll deltas. Velocity decays by friction each step. May include overshoot (scroll past target then bounce back).
Trait Implementations§
Source§impl Clone for BehaviorSimulator
impl Clone for BehaviorSimulator
Source§fn clone(&self) -> BehaviorSimulator
fn clone(&self) -> BehaviorSimulator
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 moreAuto Trait Implementations§
impl !Freeze for BehaviorSimulator
impl RefUnwindSafe for BehaviorSimulator
impl Send for BehaviorSimulator
impl Sync for BehaviorSimulator
impl Unpin for BehaviorSimulator
impl UnsafeUnpin for BehaviorSimulator
impl UnwindSafe for BehaviorSimulator
Blanket Implementations§
Source§impl<T> AsCtxPtr for Twhere
T: ?Sized,
impl<T> AsCtxPtr for Twhere
T: ?Sized,
Source§fn as_ctx_ptr(&self) -> *mut Selfwhere
Self: Sized,
fn as_ctx_ptr(&self) -> *mut Selfwhere
Self: Sized,
self’s address as *mut Self for deferred-task / scopeguard /
ref_guard ctx slots. The closures/trampolines deref it as shared
(&*p) — every method they reach is &self post-R-2, so no write
provenance is required; the *mut spelling is purely to match the
existing DerefOnDrop / HasAutoFlush / RefCount ABI.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> ErasedDestructor for Twhere
T: 'static,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Filterable for T
impl<T> Filterable for T
Source§fn filterable(
self,
filter_name: &'static str,
) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
fn filterable( self, filter_name: &'static str, ) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
Creates a filterable data provider with the given name for debugging. Read more
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 moreSource§impl<T> MaybeBoxed<Box<T>> for T
impl<T> MaybeBoxed<Box<T>> for T
Source§fn maybe_boxed(self) -> Box<T>
fn maybe_boxed(self) -> Box<T>
Convert
Source§impl<T> MaybeBoxed<T> for T
impl<T> MaybeBoxed<T> for T
Source§fn maybe_boxed(self) -> T
fn maybe_boxed(self) -> T
Convert