pub struct Segments { /* private fields */ }Expand description
Customer segment operations for grouping and targeting.
Implementations§
Source§impl Segments
impl Segments
Sourcepub fn is_supported(&self) -> bool
pub fn is_supported(&self) -> bool
Whether customer segments are supported by the active backend.
Sourcepub fn create(&self, input: CreateSegment) -> Result<Segment>
pub fn create(&self, input: CreateSegment) -> Result<Segment>
Create a new customer segment.
§Example
ⓘ
use stateset_embedded::{Commerce, CreateSegment, SegmentType};
let commerce = Commerce::new("./store.db")?;
let segment = commerce.segments().create(CreateSegment {
name: "High Spenders".into(),
segment_type: SegmentType::Dynamic,
description: Some("Customers who have spent over $1000".into()),
..Default::default()
})?;Sourcepub fn list(&self, filter: SegmentFilter) -> Result<Vec<Segment>>
pub fn list(&self, filter: SegmentFilter) -> Result<Vec<Segment>>
List segments with optional filtering.
Sourcepub fn add_member(
&self,
segment_id: SegmentId,
customer_id: CustomerId,
) -> Result<SegmentMembership>
pub fn add_member( &self, segment_id: SegmentId, customer_id: CustomerId, ) -> Result<SegmentMembership>
Add a customer to a static segment.
Sourcepub fn remove_member(
&self,
segment_id: SegmentId,
customer_id: CustomerId,
) -> Result<()>
pub fn remove_member( &self, segment_id: SegmentId, customer_id: CustomerId, ) -> Result<()>
Remove a customer from a static segment.
Sourcepub fn list_members(
&self,
segment_id: SegmentId,
limit: Option<u32>,
offset: Option<u32>,
) -> Result<Vec<SegmentMembership>>
pub fn list_members( &self, segment_id: SegmentId, limit: Option<u32>, offset: Option<u32>, ) -> Result<Vec<SegmentMembership>>
List members of a segment.
Sourcepub fn is_member(
&self,
segment_id: SegmentId,
customer_id: CustomerId,
) -> Result<bool>
pub fn is_member( &self, segment_id: SegmentId, customer_id: CustomerId, ) -> Result<bool>
Check if a customer is a member of a segment.
Sourcepub fn count_members(&self, segment_id: SegmentId) -> Result<u64>
pub fn count_members(&self, segment_id: SegmentId) -> Result<u64>
Count the number of members in a segment.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for Segments
impl !UnwindSafe for Segments
impl Freeze for Segments
impl Send for Segments
impl Sync for Segments
impl Unpin for Segments
impl UnsafeUnpin for Segments
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