pub struct TrafficSplit {
pub schema: SchemaVersion,
pub env_id: EnvId,
pub deployment_id: DeploymentId,
pub bundle_id: BundleId,
pub generation: u64,
pub entries: Vec<TrafficSplitEntry>,
pub updated_at: DateTime<Utc>,
pub updated_by: String,
pub idempotency_key: String,
pub authorization_ref: PathBuf,
pub previous_split_ref: Option<PathBuf>,
}Fields§
§schema: SchemaVersion§env_id: EnvId§deployment_id: DeploymentId§bundle_id: BundleId§generation: u64§entries: Vec<TrafficSplitEntry>§updated_at: DateTime<Utc>§updated_by: String§idempotency_key: String§previous_split_ref: Option<PathBuf>Implementations§
Source§impl TrafficSplit
impl TrafficSplit
pub fn schema_str() -> &'static str
Sourcepub fn validate(&self) -> Result<(), SpecError>
pub fn validate(&self) -> Result<(), SpecError>
§5.3: schema discriminator equals greentic.traffic-split.v1 and
the sum of weight_bps MUST equal 10,000.
Sum widens into u64 and rejects any per-entry value above 10,000 so a
crafted document like [u32::MAX, 10001] cannot wrap to exactly 10,000
in release builds.
Trait Implementations§
Source§impl Clone for TrafficSplit
impl Clone for TrafficSplit
Source§fn clone(&self) -> TrafficSplit
fn clone(&self) -> TrafficSplit
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 Debug for TrafficSplit
impl Debug for TrafficSplit
Source§impl<'de> Deserialize<'de> for TrafficSplit
impl<'de> Deserialize<'de> for TrafficSplit
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for TrafficSplit
Source§impl PartialEq for TrafficSplit
impl PartialEq for TrafficSplit
Source§fn eq(&self, other: &TrafficSplit) -> bool
fn eq(&self, other: &TrafficSplit) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for TrafficSplit
impl Serialize for TrafficSplit
impl StructuralPartialEq for TrafficSplit
Auto Trait Implementations§
impl Freeze for TrafficSplit
impl RefUnwindSafe for TrafficSplit
impl Send for TrafficSplit
impl Sync for TrafficSplit
impl Unpin for TrafficSplit
impl UnsafeUnpin for TrafficSplit
impl UnwindSafe for TrafficSplit
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> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.