pub struct ContractUserModerationTransitionActionV0 {
pub moderator_id: Identifier,
pub data_contract_id: Identifier,
pub identity_contract_nonce: IdentityNonce,
pub action: ContractUserModerationAction,
pub target_is_suspended: bool,
pub warning: Option<ContractWarningContext>,
pub document_deletion: Option<ContractDocumentDeletionContext>,
pub document_restoration: Option<ContractDocumentRestorationContext>,
pub document_change: Option<ContractDocumentChangeContext>,
pub team_action: Option<ContractTeamActionContext>,
pub moderation_action_count: Option<u32>,
pub user_fee_increase: UserFeeIncrease,
}Expand description
action v0
Fields§
§moderator_id: Identifierthe moderator that signed
data_contract_id: Identifierthe moderated contract
identity_contract_nonce: IdentityNoncethe moderator’s nonce for the contract, used to prevent replay attacks
action: ContractUserModerationActionwhat is done, to whom
target_is_suspended: boolwhether the target carried a suspension when the transition was validated, so that Drive knows whether a suspend replaces an entry and whether a ban also removes a suspension, without reading again. The status itself, with its reasons, stays behind.
warning: Option<ContractWarningContext>what a warn read when the transition was validated, None for every other action
document_deletion: Option<ContractDocumentDeletionContext>what a document deletion read when the transition was validated, None for every
other action
document_restoration: Option<ContractDocumentRestorationContext>what a document restore read and decoded when the transition was validated, None
for every other action
document_change: Option<ContractDocumentChangeContext>what a document field change read and built when the transition was validated,
None for every other action
team_action: Option<ContractTeamActionContext>what the proposal of a settled document’s deletion or the approval of a team action read
and decided when the transition was validated, None for every other action
moderation_action_count: Option<u32>the signer’s count of moderation actions on the elected contract since its moderators
pot was last settled, this action included, when the signer is on the contract’s seated
team and the action counts (a ban, a suspension, a warning or a document deletion);
None otherwise. Read when the transition was validated, so Drive writes it without
reading again
user_fee_increase: UserFeeIncreasefee multiplier
Implementations§
Source§impl ContractUserModerationTransitionActionV0
impl ContractUserModerationTransitionActionV0
Sourcepub fn from_borrowed_transition_with_status(
value: &ContractUserModerationTransitionV0,
current_status: &ContractModerationStatus,
block_time_ms: TimestampMillis,
) -> Self
pub fn from_borrowed_transition_with_status( value: &ContractUserModerationTransitionV0, current_status: &ContractModerationStatus, block_time_ms: TimestampMillis, ) -> Self
The action of a borrowed transition, keeping of the target’s stored status what Drive
needs: whether it carries a suspension, and for a warn the warnings it carries, which
the entry is rewritten with, and block_time_ms, which the new warning is stamped with
Sourcepub fn from_borrowed_transition_with_document_deletion(
value: &ContractUserModerationTransitionV0,
document_deletion: ContractDocumentDeletionContext,
) -> Self
pub fn from_borrowed_transition_with_document_deletion( value: &ContractUserModerationTransitionV0, document_deletion: ContractDocumentDeletionContext, ) -> Self
The action of a borrowed transition that deletes a document, carrying what the validation read about the contract, the document and its removal record
Sourcepub fn from_borrowed_transition_with_document_restoration(
value: &ContractUserModerationTransitionV0,
document_restoration: ContractDocumentRestorationContext,
) -> Self
pub fn from_borrowed_transition_with_document_restoration( value: &ContractUserModerationTransitionV0, document_restoration: ContractDocumentRestorationContext, ) -> Self
The action of a borrowed transition that restores a document, carrying what the validation read and decoded: the contract, the document and its marked record
Sourcepub fn from_borrowed_transition_with_document_change(
value: &ContractUserModerationTransitionV0,
document_change: ContractDocumentChangeContext,
) -> Self
pub fn from_borrowed_transition_with_document_change( value: &ContractUserModerationTransitionV0, document_change: ContractDocumentChangeContext, ) -> Self
The action of a borrowed transition that changes fields of a document, carrying what the validation read and built: the contract and the changed document
Sourcepub fn from_borrowed_transition_with_team_action(
value: &ContractUserModerationTransitionV0,
team_action: ContractTeamActionContext,
) -> Self
pub fn from_borrowed_transition_with_team_action( value: &ContractUserModerationTransitionV0, team_action: ContractTeamActionContext, ) -> Self
The action of a borrowed transition that proposes the deletion of a settled document or approves a team action, carrying what the validation read and decided: the approval to store, and the deletion when the approvals meet the rule
Trait Implementations§
Source§impl Clone for ContractUserModerationTransitionActionV0
impl Clone for ContractUserModerationTransitionActionV0
Source§fn clone(&self) -> ContractUserModerationTransitionActionV0
fn clone(&self) -> ContractUserModerationTransitionActionV0
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl From<ContractUserModerationTransitionActionV0> for ContractUserModerationTransitionAction
impl From<ContractUserModerationTransitionActionV0> for ContractUserModerationTransitionAction
Source§fn from(value: ContractUserModerationTransitionActionV0) -> Self
fn from(value: ContractUserModerationTransitionActionV0) -> Self
Auto Trait Implementations§
impl Freeze for ContractUserModerationTransitionActionV0
impl RefUnwindSafe for ContractUserModerationTransitionActionV0
impl Send for ContractUserModerationTransitionActionV0
impl Sync for ContractUserModerationTransitionActionV0
impl Unpin for ContractUserModerationTransitionActionV0
impl UnsafeUnpin for ContractUserModerationTransitionActionV0
impl UnwindSafe for ContractUserModerationTransitionActionV0
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,
§impl<T> Conv for T
impl<T> Conv for T
§impl<T> CostsExt for T
impl<T> CostsExt for T
§fn wrap_with_cost(self, cost: OperationCost) -> CostContext<Self>where
Self: Sized,
fn wrap_with_cost(self, cost: OperationCost) -> CostContext<Self>where
Self: Sized,
CostContext object with provided costs.§fn wrap_fn_cost(
self,
f: impl FnOnce(&Self) -> OperationCost,
) -> CostContext<Self>where
Self: Sized,
fn wrap_fn_cost(
self,
f: impl FnOnce(&Self) -> OperationCost,
) -> CostContext<Self>where
Self: Sized,
CostContext object with costs computed using the
value getting wrapped.§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
§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, U> IntoOnNetwork<U> for Twhere
U: FromOnNetwork<T>,
impl<T, U> IntoOnNetwork<U> for Twhere
U: FromOnNetwork<T>,
§fn into_on_network(self, network: Network) -> U
fn into_on_network(self, network: Network) -> U
Calls U::from_on_network(self).
§impl<T, U> IntoPlatformVersioned<U> for Twhere
U: FromPlatformVersioned<T>,
impl<T, U> IntoPlatformVersioned<U> for Twhere
U: FromPlatformVersioned<T>,
§fn into_platform_versioned(self, platform_version: &PlatformVersion) -> U
fn into_platform_versioned(self, platform_version: &PlatformVersion) -> U
§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.