pub enum RiskReason {
Show 13 variants
ExerciseWithSubmissionsRemoved {
exercise_id: Uuid,
},
PageWithSubmissionsRemoved,
ChapterWithSubmissionsRemoved,
VisiblePageRemoved,
OpenChapterRemoved,
DeadlineMovedEarlier {
before: DateTime<Utc>,
after: DateTime<Utc>,
},
DeadlineAddedToOpenChapter {
deadline: DateTime<Utc>,
},
ExerciseDeadlineMovedEarlier {
exercise_id: Uuid,
before: DateTime<Utc>,
after: DateTime<Utc>,
},
ExerciseDeadlineAdded {
exercise_id: Uuid,
deadline: DateTime<Utc>,
},
OpeningMovedLater {
opens_at: DateTime<Utc>,
},
CompletionPolicyChangedAfterCompletions,
CompletionRequirementChangedAfterCompletions,
ChapterLockingToggled {
is_enabled: bool,
},
}Expand description
Why a staged change needs the user’s confirmation before it is published: a rule it breaks, with the facts the rule found. It belongs to the entity the change is to, so it doesn’t name that entity again.
Variants§
ExerciseWithSubmissionsRemoved
The page loses an exercise that has submissions.
PageWithSubmissionsRemoved
The page is removed, with exercises that have submissions.
ChapterWithSubmissionsRemoved
The chapter is removed, with exercises that have submissions.
VisiblePageRemoved
The page is removed while students can see it.
OpenChapterRemoved
The chapter is removed while it is open.
DeadlineMovedEarlier
The open chapter’s deadline moves earlier.
DeadlineAddedToOpenChapter
The open chapter gets a deadline.
ExerciseDeadlineMovedEarlier
The deadline that applies to the exercise on the page, open to students, moves earlier through a change to the exercise’s own deadline.
ExerciseDeadlineAdded
The exercise on the page, open to students and without a deadline so far, gets its own.
OpeningMovedLater
The open chapter opens again only later.
CompletionPolicyChangedAfterCompletions
The module’s completion policy changes after students have completed it.
CompletionRequirementChangedAfterCompletions
The number of module completions the base module requires changes after modules have completions.
ChapterLockingToggled
Chapter locking is turned on, or off.
Trait Implementations§
Source§impl Clone for RiskReason
impl Clone for RiskReason
Source§fn clone(&self) -> RiskReason
fn clone(&self) -> RiskReason
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl ComposeSchema for RiskReason
impl ComposeSchema for RiskReason
Source§impl Debug for RiskReason
impl Debug for RiskReason
Source§impl<'de> Deserialize<'de> for RiskReason
impl<'de> Deserialize<'de> for RiskReason
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>,
Source§impl PartialEq for RiskReason
impl PartialEq for RiskReason
Source§impl Serialize for RiskReason
impl Serialize for RiskReason
Source§impl ToSchema for RiskReason
impl ToSchema for RiskReason
impl Eq for RiskReason
impl StructuralPartialEq for RiskReason
Auto Trait Implementations§
impl Freeze for RiskReason
impl RefUnwindSafe for RiskReason
impl Send for RiskReason
impl Sync for RiskReason
impl Unpin for RiskReason
impl UnsafeUnpin for RiskReason
impl UnwindSafe for RiskReason
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].