#[repr(i32)]pub enum Audience {
Unspecified = 0,
Private = 1,
Members = 2,
Public = 3,
}Expand description
Existence/history audience for a spool. Numeric tags match v1 Visibility (PRIVATE=1, INTERNAL/MEMBERS=2, PUBLIC=3). Do not add AUDIENCE_INTERNAL.
AUDIENCE_MEMBERS — principals who hold a GrantRecord or MemberRecord on this spool, or a GrantRecord on an ancestor with include_descendants=true that reaches this spool (unexpired), or an unrevoked native_support_access row on this spool or on such an ancestor. It is not “any signed-in Heddle user” and is not keyed on parent kind. CreateSpool / ReviseSpool do not reject MEMBERS by parent kind. An ancestor grant with include_descendants=false does not admit a child. Persistence may store the token “internal”; a later rename to “members” is not a widening.
Coherence: default_state_audience <= audience. No PRIVATE-existence + MEMBERS-history carve-out. PUBLIC history requires PUBLIC existence. Discriminant order is restrictiveness: PRIVATE < MEMBERS < PUBLIC.
An owner-signed max_audience ceiling cannot widen this table; it only stops delegated writes from moving this spool or a descendant to a wider cell. See SignedSpoolPolicy.max_audience.
Variants§
Implementations§
Source§impl Audience
impl Audience
Sourcepub fn as_str_name(&self) -> &'static str
pub fn as_str_name(&self) -> &'static str
String value of the enum field names used in the ProtoBuf definition.
The values are not transformed in any way and thus are considered stable (if the ProtoBuf definition does not change) and safe for programmatic use.
Sourcepub fn from_str_name(value: &str) -> Option<Audience>
pub fn from_str_name(value: &str) -> Option<Audience>
Creates an enum from field names used in the ProtoBuf definition.
Trait Implementations§
impl Copy for Audience
impl Eq for Audience
Source§impl Ord for Audience
impl Ord for Audience
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialOrd for Audience
impl PartialOrd for Audience
impl StructuralPartialEq for Audience
Auto Trait Implementations§
impl Freeze for Audience
impl RefUnwindSafe for Audience
impl Send for Audience
impl Sync for Audience
impl Unpin for Audience
impl UnsafeUnpin for Audience
impl UnwindSafe for Audience
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
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> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
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
key and return true if they are equal.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> ⓘ
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> ⓘ
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 more