pub struct ThreadPolicy {
pub id: String,
pub repo_path: String,
pub target_thread_pattern: String,
pub gated_action: String,
pub required_approvals: u32,
pub required_role: i32,
pub required_paths: Vec<String>,
pub forbid_author_approval: bool,
pub stale_on_update: bool,
pub approval_ttl_secs: Option<Duration>,
pub created_at: Option<Timestamp>,
pub updated_at: Option<Timestamp>,
}Fields§
§id: String§repo_path: String§target_thread_pattern: StringGlob pattern: “main”, “release/”, “”, etc.
gated_action: String‘merge’ | ‘force_push’ | ‘complete’
required_approvals: u32Flat-role requirement. required_role is one of
‘reader’ | ‘developer’ | ‘maintainer’ | ‘admin’ | ‘owner’.
When required_approvals == 0, the flat-role requirement is
skipped (only group-based requirements apply).
required_role: i32§required_paths: Vec<String>CODEOWNERS-style: policy fires only when the diff intersects one of these globs. Empty = applies to every change.
Approver may not be the author of any state on the source thread.
Only enforceable when the merge call passes author_user_id.
stale_on_update: bool§approval_ttl_secs: Option<Duration>Wall-clock approval expiry; 0 = no expiry.
created_at: Option<Timestamp>§updated_at: Option<Timestamp>Implementations§
Source§impl ThreadPolicy
impl ThreadPolicy
Sourcepub fn required_role(&self) -> HostedRole
pub fn required_role(&self) -> HostedRole
Returns the enum value of required_role, or the default if the field is set to an invalid enum value.
Sourcepub fn set_required_role(&mut self, value: HostedRole)
pub fn set_required_role(&mut self, value: HostedRole)
Sets required_role to the provided enum value.
Trait Implementations§
Source§impl Clone for ThreadPolicy
impl Clone for ThreadPolicy
Source§fn clone(&self) -> ThreadPolicy
fn clone(&self) -> ThreadPolicy
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 ThreadPolicy
impl Debug for ThreadPolicy
Source§impl Default for ThreadPolicy
impl Default for ThreadPolicy
Source§impl Hash for ThreadPolicy
impl Hash for ThreadPolicy
Source§impl Message for ThreadPolicy
impl Message for ThreadPolicy
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message to a buffer. Read more
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message to a newly allocated buffer.
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message with a length-delimiter to a buffer. Read more
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message with a length-delimiter to a newly allocated buffer.
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes an instance of the message from a buffer. Read more
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes an instance of the message from a buffer, and merges it into
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes a length-delimited instance of the message from buffer, and
merges it into
self.Source§impl PartialEq for ThreadPolicy
impl PartialEq for ThreadPolicy
Source§fn eq(&self, other: &ThreadPolicy) -> bool
fn eq(&self, other: &ThreadPolicy) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Eq for ThreadPolicy
impl StructuralPartialEq for ThreadPolicy
Auto Trait Implementations§
impl Freeze for ThreadPolicy
impl RefUnwindSafe for ThreadPolicy
impl Send for ThreadPolicy
impl Sync for ThreadPolicy
impl Unpin for ThreadPolicy
impl UnsafeUnpin for ThreadPolicy
impl UnwindSafe for ThreadPolicy
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
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§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.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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request