pub struct EmissionPolicy { /* private fields */ }Expand description
A complete, valid selection over the version-1 emission vocabulary.
Construction is checked so callers cannot enable kind partitions while disabling every anchor capable of carrying them.
Implementations§
Source§impl EmissionPolicy
impl EmissionPolicy
Sourcepub const fn new(
conditional_anchors: ConditionalAnchors,
terminal_clauses: bool,
kind_partitions: bool,
) -> Result<EmissionPolicy, InvalidEmissionPolicy>
pub const fn new( conditional_anchors: ConditionalAnchors, terminal_clauses: bool, kind_partitions: bool, ) -> Result<EmissionPolicy, InvalidEmissionPolicy>
Creates an emission policy after checking the complete knob matrix.
§Errors
Returns an error when kind partitions are enabled while both root and local conditional anchors are disabled.
Sourcepub const fn root_anchored_conditionals(self) -> bool
pub const fn root_anchored_conditionals(self) -> bool
Whether root-anchored ordinary conditionals are selected.
Sourcepub const fn local_conditionals(self) -> bool
pub const fn local_conditionals(self) -> bool
Whether locally anchored ordinary conditionals are selected.
Sourcepub const fn terminal_clauses(self) -> bool
pub const fn terminal_clauses(self) -> bool
Whether unconditional and guarded terminal clauses are selected.
Sourcepub const fn kind_partitions(self) -> bool
pub const fn kind_partitions(self) -> bool
Whether kind-partition refinements are selected at enabled anchors.
Trait Implementations§
Source§impl Clone for EmissionPolicy
impl Clone for EmissionPolicy
Source§fn clone(&self) -> EmissionPolicy
fn clone(&self) -> EmissionPolicy
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 moreimpl Copy for EmissionPolicy
Source§impl Debug for EmissionPolicy
impl Debug for EmissionPolicy
impl Eq for EmissionPolicy
Source§impl From<EmissionPolicy> for EmissionSelection
impl From<EmissionPolicy> for EmissionSelection
Source§fn from(policy: EmissionPolicy) -> EmissionSelection
fn from(policy: EmissionPolicy) -> EmissionSelection
Converts to this type from the input type.
Source§impl PartialEq for EmissionPolicy
impl PartialEq for EmissionPolicy
Source§impl Serialize for EmissionPolicy
impl Serialize for EmissionPolicy
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for EmissionPolicy
Auto Trait Implementations§
impl Freeze for EmissionPolicy
impl RefUnwindSafe for EmissionPolicy
impl Send for EmissionPolicy
impl Sync for EmissionPolicy
impl Unpin for EmissionPolicy
impl UnsafeUnpin for EmissionPolicy
impl UnwindSafe for EmissionPolicy
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,
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.