pub enum GlobalResponse {
Show 171 variants
ThreadExited,
WithDeadline(Duration, Box<GlobalResponse>),
Granted(Box<GlobalResponse>),
RequestResources(ResumeStatus),
ParkedRequest(ResourceReply),
ResumeParkedRequest(ResourceReply),
FinishParkedObservation(Result<FinishAck, ProtocolFailure>),
SignalDequeued {
ack: Result<DequeueAck, TimerFailure>,
terminal: bool,
},
ReleaseResources(()),
ReleaseAllResources(()),
ReportUnsupportedSyscall(()),
AnnounceSignalHandlerNotInstalled(()),
PolicyRefusal(()),
PrepareExec(()),
CancelExec(()),
ReconnectExec(bool),
ResumeExec(ResumeStatus, Option<LogicalTime>),
RetireExec(bool),
MarkPastFirstExecve(Box<ExecFdState>),
CreateChildThread(Option<MmId>),
StartNewThread(Option<ThreadHistory>),
DeregisterThread(()),
SetChildTidAddress(()),
SetSavedGuestSigmask(()),
PublishedGuestSigmask(Option<u64>),
SetSigtimedwaitSet(()),
OwnProcessSignalInputs(OwnProcessSignalInputs),
ProcessSignalReceiver(ProcessSignalReceiver),
ProcessSignalSent(()),
OwnProcessSignalChoice(()),
RecordGuestMarkerSignal(()),
FutexAction(Option<SchedValue>),
DeterminizeInode((DetInode, LogicalTime)),
DeterminizeMappingInodes(Vec<DetInode>),
DeterminizeDevice(u64),
DeterminizeMountId(Option<u64>),
ResolveMountinfoIds(Option<Vec<u64>>),
RetireInode(()),
ForgetRetiredInode(()),
DirectorySnapshotMark(SnapshotMark),
ReadyChannel(ReadyOutcome),
HandOffTurn(bool),
CommitFatalDelivery(bool),
TouchFile(()),
SetFileMtime(()),
GlobalTimeLowerBound(LogicalTime),
TraceSchedEvent(TraceSchedEventResponse),
RegisterAlarm((LogicalTime, LogicalTime)),
RegisterPosixTimer(()),
ReadyChildWait((Option<DetPid>, bool)),
ConsumeChildWait(bool),
ProcessGroup(Option<DetPid>),
SetProcessGroup(bool),
CreateSession(bool),
AlarmRemaining(ItimerSnapshot),
ReconcileAlarm,
NoteGuestSigalrm,
ResolveKillTargets(Vec<DetTid>, Option<bool>),
NamesHermitTask(bool),
NotifySignalPending(()),
HoldTurnForGroupExit(bool),
NotifyUnresolvedSigkill(()),
ThreadIsLive(bool),
PendingRealTimeExpirations(u64),
DiscardPendingRealTimeExpirations(()),
RegisterSignalfd(()),
RecordHandlerRestoreMask(()),
ExactChildWaitState(ExactChildWaitState),
UnrecoverableShutdown(()),
RequestPort(u16),
AddUsedPort,
ReleasePort(Option<u16>),
PortFull,
RobustListWakes(Vec<u64>),
Network(Result<NetworkReply, NetworkEngineError>),
RecordHostInput(()),
RecordHostMutation(()),
HostTimedSignals(u64),
SharedOpenFile(Result<OpenFileControlReply, SharedOpenFileError>),
Sigalrm(bool),
ChildExitSigchld(ChildExitSigchldAnswer),
RecordDeterminismLoss(()),
SetChildSubreaper(()),
RegisteredProcessOf(Option<DetPid>),
SetSigchldDisposition(()),
SignalTargetProcess(Option<DetPid>),
ReserveSigkill(Option<SigkillReservation>),
CommitSigkill(()),
Retired,
PosixTimerThread(PosixTimerThread),
ForgetThreadTimerCopies(()),
GuestPid(GuestPidAnswer),
LocalPid(Result<Option<i32>, String>),
ExecTimerFlush(Result<ExecTimerFlush, String>),
RetireExitedLeader(bool),
DiscardedSignal(DiscardedSignalAnswer),
DescriptorsReplaced(()),
ThreadIdRefused(bool),
ProcfsListing(ListingFacts),
ParentDeathSignal(i32),
PrepareNativeExec(Result<ExecTicket, ExecControlError>),
SealNativeExecStats(Result<[u8; 32], ExecControlError>),
IssueNativeExec(Result<(), ExecControlError>),
CancelNativeExec(Result<(), ExecControlError>),
CompleteNativeExec(Result<(), ExecControlError>),
NamesARetiredExitedLeader(bool),
ProcfsIds(Vec<Option<i32>>),
GroupOrSession(Option<DetPid>),
SetsidDecision(Result<(), i32>),
SetpgidDecision(Result<(DetPid, DetPid), i32>),
ProcessImage(Option<Box<ExecRecord>>),
ProcfsTask(ProcfsTaskAnswer),
RenderedFileState(RenderedFileState),
PublishSignalDispositions(Option<PublicationAnswer>),
GuestLog(()),
PublishSignalMask(bool),
RecordProcessAuxv(()),
ProcessAuxv(Option<ProcessAuxv>),
AuxvFromKernel(bool),
AnnounceRefusedSignalControls(()),
CheckBrkMappings(Option<bool>),
PublishRuntimePrivateMemory(bool),
MarkChangedRoot(()),
RootChanged(bool),
DescriptionLocks(()),
TableReleased(()),
GuestLockRows(Result<Vec<bool>, String>),
TableExec(()),
AliasedInode(()),
HostTimedAndPrivateSigchld(u64, u64),
LockLedgerRefused(()),
MappingCapture(Reply),
WithSliceBoundaryBudget(Budget, Box<GlobalResponse>),
WithSliceBoundaryOwner(Owner, Box<GlobalResponse>),
WithSliceBoundaryStack(Option<PathBuf>, Box<GlobalResponse>),
ProcessCmdline(DetPid, Option<CmdlineArea>),
KernelRunTarget(Option<KernelRunBlock>),
WithCallbackHistory(Startup, Box<GlobalResponse>),
CallbackCheckpointMismatch(()),
TaskStatFacts(TaskStatFacts),
SetTaskComm(()),
RecordExternalParent(()),
SetRssLimit(()),
GuestSigmaskForStatus(StatusGuestMask),
PublishTemporaryMask(Option<CommittedSendWindow>),
InPidNamespaceInit(bool),
VirtualInotifyCookies(Vec<u32>),
RegisterPlaceholder(Option<u64>),
Placeholder(Option<(PlaceholderDirectory, OpenFileId)>),
PlaceholderFlock(PlaceholderFlockOutcome),
PlaceholderWriteHint(u64),
PlaceholderCopies(Result<(), OpenFileId>),
CpuAffinity(TaskAffinity),
WithLoneGrant(Box<GlobalResponse>),
SigkillDyingThreads(Vec<(DetTid, MmId)>),
RecordSigkillRobustLists(()),
TakeSigkillRobustList(Option<RobustListSnapshot>),
NextGuestId(Option<i32>),
GaveHostId(()),
ReplayDeparture(Result<(), Refusal>),
DescriptionLocksTaken(()),
LockOwners(Result<Vec<i64>, String>),
LedgerLockRows(Result<Vec<(HeldLock, i64)>, String>),
SecondIdentityLocks(()),
HoldTable(Result<(), String>),
RecordLocksHeldAsOfd(()),
HostDiskstats(Result<Vec<u8>, i32>),
UserNamespaceRelation(UserNamespaceRelation, bool),
UserNamespaceOwnerMayDiffer(()),
ProcfsSequence(Option<ProcfsSequence>),
StoreProcfsSequence(()),
}Expand description
Existing full response wire type; neutral native responses carry no clock. Responses from the global object
Variants§
ThreadExited
The scheduler permanently removed this raw TID. Guest-side RPC handling retires this task without cancelling a live group-exit issuer or resuming the operation.
WithDeadline(Duration, Box<GlobalResponse>)
A reply, with the virtual time that remained before the earliest
pending deadline when the thread was granted the turn it resumes, or
armed a timer (Scheduler::deadline_remaining_from). Unwrapped by
send_and_update_time, which caps the thread’s slice there.
Granted(Box<GlobalResponse>)
A reply to a request while which the thread was granted a turn
(Scheduler::take_grant): other threads may have run since it was
sent. Unwrapped by send_and_update_time, which notes the hand-off
(ThreadState::note_scheduler_handoff).
RequestResources(ResumeStatus)
ParkedRequest(ResourceReply)
ResumeParkedRequest(ResourceReply)
FinishParkedObservation(Result<FinishAck, ProtocolFailure>)
SignalDequeued
ReleaseResources(())
ReleaseAllResources(())
ReportUnsupportedSyscall(())
AnnounceSignalHandlerNotInstalled(())
PolicyRefusal(())
PrepareExec(())
CancelExec(())
ReconnectExec(bool)
ResumeExec(ResumeStatus, Option<LogicalTime>)
RetireExec(bool)
MarkPastFirstExecve(Box<ExecFdState>)
CreateChildThread(Option<MmId>)
StartNewThread(Option<ThreadHistory>)
Includes optional preemption points for the new thread.
DeregisterThread(())
SetChildTidAddress(())
SetSavedGuestSigmask(())
PublishedGuestSigmask(Option<u64>)
SetSigtimedwaitSet(())
OwnProcessSignalInputs(OwnProcessSignalInputs)
ProcessSignalReceiver(ProcessSignalReceiver)
ProcessSignalSent(())
OwnProcessSignalChoice(())
RecordGuestMarkerSignal(())
FutexAction(Option<SchedValue>)
DeterminizeInode((DetInode, LogicalTime))
Return the mtime as well:
DeterminizeMappingInodes(Vec<DetInode>)
DeterminizeDevice(u64)
DeterminizeMountId(Option<u64>)
ResolveMountinfoIds(Option<Vec<u64>>)
RetireInode(())
ForgetRetiredInode(())
DirectorySnapshotMark(SnapshotMark)
ReadyChannel(ReadyOutcome)
HandOffTurn(bool)
CommitFatalDelivery(bool)
Whether the process’s other threads were retired.
TouchFile(())
SetFileMtime(())
GlobalTimeLowerBound(LogicalTime)
TraceSchedEvent(TraceSchedEventResponse)
RegisterAlarm((LogicalTime, LogicalTime))
RegisterPosixTimer(())
ReadyChildWait((Option<DetPid>, bool))
ConsumeChildWait(bool)
ProcessGroup(Option<DetPid>)
SetProcessGroup(bool)
CreateSession(bool)
AlarmRemaining(ItimerSnapshot)
ReconcileAlarm
NoteGuestSigalrm
ResolveKillTargets(Vec<DetTid>, Option<bool>)
NamesHermitTask(bool)
NotifySignalPending(())
HoldTurnForGroupExit(bool)
NotifyUnresolvedSigkill(())
ThreadIsLive(bool)
PendingRealTimeExpirations(u64)
DiscardPendingRealTimeExpirations(())
RegisterSignalfd(())
RecordHandlerRestoreMask(())
ExactChildWaitState(ExactChildWaitState)
UnrecoverableShutdown(())
RequestPort(u16)
AddUsedPort
ReleasePort(Option<u16>)
PortFull
RobustListWakes(Vec<u64>)
Network(Result<NetworkReply, NetworkEngineError>)
RecordHostInput(())
Appended at the end, so that adding it left every earlier variant’s tag unchanged.
RecordHostMutation(())
Appended at the end, so that adding it left every earlier variant’s tag unchanged.
HostTimedSignals(u64)
Appended after RecordHostMutation, so that adding it left every
earlier variant’s tag unchanged.
Appended after HostTimedSignals, for the same reason.
Sigalrm(bool)
Whether the SIGALRM ledger refused the control message. Appended after
SharedOpenFile, for the same reason.
ChildExitSigchld(ChildExitSigchldAnswer)
RecordDeterminismLoss(())
Appended after ChildExitSigchld, for the same reason.
SetChildSubreaper(())
Appended after RecordDeterminismLoss, for the same reason.
RegisteredProcessOf(Option<DetPid>)
Appended after SetChildSubreaper, for the same reason.
SetSigchldDisposition(())
Appended after RegisteredProcessOf, for the same reason.
SignalTargetProcess(Option<DetPid>)
Appended after SetSigchldDisposition, for the same reason.
ReserveSigkill(Option<SigkillReservation>)
The reservation token, or none when the send keeps the ordinary path.
Appended after RegisteredProcessOf, for the same reason.
CommitSigkill(())
Appended after ReserveSigkill, for the same reason.
Retired
The sender is a committed SIGKILL victim
(Scheduler::is_unaccounted_sigkill_victim): its request is never
answered, and the client waits for the kernel to end it. Unlike
ThreadExited, it never tail-injects an exit. Appended after
CommitSigkill, for the same reason.
PosixTimerThread(PosixTimerThread)
Appended after Retired, for the same reason.
ForgetThreadTimerCopies(())
Appended after PosixTimerThread, for the same reason.
GuestPid(GuestPidAnswer)
Appended after Retired, for the same reason.
LocalPid(Result<Option<i32>, String>)
Appended after GuestPid, for the same reason.
ExecTimerFlush(Result<ExecTimerFlush, String>)
Appended after LocalPid, for the same reason.
RetireExitedLeader(bool)
Appended after ExecTimerFlush, for the same reason.
DiscardedSignal(DiscardedSignalAnswer)
Appended after RetireExitedLeader, for the same reason.
DescriptorsReplaced(())
Appended after DiscardedSignal, for the same reason.
ThreadIdRefused(bool)
Appended after DescriptorsReplaced, for the same reason.
ProcfsListing(ListingFacts)
Appended after ThreadIdRefused, for the same reason.
ParentDeathSignal(i32)
Appended after ProcfsListing, for the same reason.
PrepareNativeExec(Result<ExecTicket, ExecControlError>)
Exact native responses, appended without changing existing wire tags.
SealNativeExecStats(Result<[u8; 32], ExecControlError>)
IssueNativeExec(Result<(), ExecControlError>)
CancelNativeExec(Result<(), ExecControlError>)
CompleteNativeExec(Result<(), ExecControlError>)
NamesARetiredExitedLeader(bool)
Appended last, for the same reason.
ProcfsIds(Vec<Option<i32>>)
Appended last, for the same reason.
GroupOrSession(Option<DetPid>)
Appended last, for the same reason.
SetsidDecision(Result<(), i32>)
Appended last; the error is an errno.
SetpgidDecision(Result<(DetPid, DetPid), i32>)
The process to move and its new group; the error is an errno. Appended last.
ProcessImage(Option<Box<ExecRecord>>)
Boxed, to keep the response small. Appended last.
ProcfsTask(ProcfsTaskAnswer)
Appended last.
RenderedFileState(RenderedFileState)
Appended last.
PublishSignalDispositions(Option<PublicationAnswer>)
The generation the scheduler holds for the sender’s process afterwards
and whether this publication is what it holds
(Scheduler::publish_signal_dispositions), or None when it took
nothing from this sender. Appended last.
GuestLog(())
Appended last.
PublishSignalMask(bool)
Whether the scheduler took the mask (it takes nothing from a thread it does not know). Appended last.
RecordProcessAuxv(())
Appended last.
ProcessAuxv(Option<ProcessAuxv>)
Appended last.
AuxvFromKernel(bool)
Whether this is the run’s first. Appended last.
AnnounceRefusedSignalControls(())
Appended last.
CheckBrkMappings(Option<bool>)
None means the capture authority or mappings were unavailable. Appended last; this response owns no allocated storage.
PublishRuntimePrivateMemory(bool)
Current image ownership publication was accepted. Appended last.
MarkChangedRoot(())
Appended last.
RootChanged(bool)
Whether the root changed. Appended last.
DescriptionLocks(())
Appended last.
TableReleased(())
Appended last.
GuestLockRows(Result<Vec<bool>, String>)
One answer per row, in row order, or, while a referenced description’s locks are unknown, why. Appended last.
TableExec(())
Appended last.
AliasedInode(())
Appended last.
HostTimedAndPrivateSigchld(u64, u64)
The host-timed signals, then the recorded private SIGCHLD. Appended
last.
LockLedgerRefused(())
Appended last.
MappingCapture(Reply)
Appended mapping capture response.
WithSliceBoundaryBudget(Budget, Box<GlobalResponse>)
Typed expectation delivered by the existing grant, appended without renumbering any legacy wire variant. Not a new resource request.
WithSliceBoundaryOwner(Owner, Box<GlobalResponse>)
Actual lifecycle identity on the existing grant, not an expectation from replay. Appended without renumbering existing wire variants.
WithSliceBoundaryStack(Option<PathBuf>, Box<GlobalResponse>)
Stored-index stack request returned on the annotated operation’s own response, without a mailbox another concurrent RPC could consume.
ProcessCmdline(DetPid, Option<CmdlineArea>)
The process, and its areas if Detcore recorded them. Appended last.
KernelRunTarget(Option<KernelRunBlock>)
The answer to GlobalRequest::KernelRunTarget. Appended last.
WithCallbackHistory(Startup, Box<GlobalResponse>)
Legacy callback metadata on the original thread-start response. Appended without changing existing wire tags or ThreadHistory’s positional layout.
CallbackCheckpointMismatch(())
A mismatch report acknowledges no scheduler grant and carries no time.
TaskStatFacts(TaskStatFacts)
The answer to GlobalRequest::TaskStatFacts. Appended last.
SetTaskComm(())
Appended last.
RecordExternalParent(())
Appended last.
SetRssLimit(())
Appended last.
GuestSigmaskForStatus(StatusGuestMask)
The answer to GlobalRequest::PublishedGuestSigmask under
Config::in_guest_signal_delivery (A5 step 3c.1e A): the published
mask, tri-state (IR-18), and D37’s held masks of a temporary-mask
publication in force (Scheduler::status_guest_mask). With the gate
off the query is answered with PublishedGuestSigmask, as before.
Appended last.
PublishTemporaryMask(Option<CommittedSendWindow>)
The answer to GlobalRequest::PublishTemporaryMask: for a withdrawal
of a publication in force, the sends committed to the thread while it
was (the committed-send window record); None otherwise. Appended
last.
InPidNamespaceInit(bool)
The answer to GlobalRequest::InPidNamespaceInit. Appended last.
VirtualInotifyCookies(Vec<u32>)
The answer to GlobalRequest::VirtualInotifyCookies: one virtual
cookie per host cookie, in order. Appended last.
RegisterPlaceholder(Option<u64>)
The answer to GlobalRequest::RegisterPlaceholder: the tag, if one
was left. Appended last.
Placeholder(Option<(PlaceholderDirectory, OpenFileId)>)
The answer to GlobalRequest::Placeholder: the directory and the
open file description it was opened in. Appended last.
PlaceholderFlock(PlaceholderFlockOutcome)
The answer to GlobalRequest::PlaceholderFlock. Appended last.
PlaceholderWriteHint(u64)
The answer to GlobalRequest::PlaceholderWriteHint: the inode’s write
hint after the request. Appended last.
PlaceholderCopies(Result<(), OpenFileId>)
The answer to GlobalRequest::PlaceholderCopies: a send’s locked
description, if any. Appended last.
CpuAffinity(TaskAffinity)
The answer to GlobalRequest::CpuAffinity and
GlobalRequest::SetCpuAffinity. Appended last.
WithLoneGrant(Box<GlobalResponse>)
A granted reply whose grant found the thread the only one able to run
before it next enters Detcore (Scheduler::take_lone_grant).
Outermost; unwrapped first by send_and_update_time, which records it
in ThreadState::lone_grant.
Appended last.
SigkillDyingThreads(Vec<(DetTid, MmId)>)
The answer to GlobalRequest::SigkillDyingThreads: each thread and its
address space, in tid order. Appended last.
RecordSigkillRobustLists(())
Appended last.
TakeSigkillRobustList(Option<RobustListSnapshot>)
The answer to GlobalRequest::TakeSigkillRobustList. Appended last.
NextGuestId(Option<i32>)
The answer to GlobalRequest::NextGuestId: the ID taken, or None
when the kernel numbers the guest or no positive ID remains. Appended last.
GaveHostId(())
The answer to GlobalRequest::GaveHostId. Appended last.
ReplayDeparture(Result<(), Refusal>)
An accepted finding or named refusal. Never carries a clock or grant. Appended last; this is not a forwarding-health certificate.
DescriptionLocksTaken(())
Appended last.
LockOwners(Result<Vec<i64>, String>)
One owner per lock asked about, in order, or why the locks cannot be
shown (procfs::locks::LockLedger::record_lock_held_as_ofd). Appended
last.
LedgerLockRows(Result<Vec<(HeldLock, i64)>, String>)
The rows and their owners, or, while a referenced description’s locks are unknown, why no snapshot can be decided. Appended last.
SecondIdentityLocks(())
Appended last.
HoldTable(Result<(), String>)
The table is held, or why it cannot be: it reached the global state
through a transport that encodes requests, which carries no table
(HeldTable). Appended last.
RecordLocksHeldAsOfd(())
Appended last.
HostDiskstats(Result<Vec<u8>, i32>)
The answer to GlobalRequest::HostDiskstats: the file’s bytes, or
the errno of the coordinator’s read of it. Appended last.
UserNamespaceRelation(UserNamespaceRelation, bool)
The answer to GlobalRequest::UserNamespaceRelation. Appended last.
UserNamespaceOwnerMayDiffer(())
The answer to GlobalRequest::UserNamespaceOwnerMayDiffer. Appended
last.
ProcfsSequence(Option<ProcfsSequence>)
The answer to GlobalRequest::ProcfsSequence. Appended last.
StoreProcfsSequence(())
The answer to GlobalRequest::StoreProcfsSequence. Appended last.
Trait Implementations§
Source§impl Clone for GlobalResponse
impl Clone for GlobalResponse
Source§fn clone(&self) -> GlobalResponse
fn clone(&self) -> GlobalResponse
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for GlobalResponse
impl Debug for GlobalResponse
Source§impl<'de> Deserialize<'de> for GlobalResponse
impl<'de> Deserialize<'de> for GlobalResponse
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>,
impl Eq for GlobalResponse
Source§impl PartialEq for GlobalResponse
impl PartialEq for GlobalResponse
Source§impl Serialize for GlobalResponse
impl Serialize for GlobalResponse
impl StructuralPartialEq for GlobalResponse
Auto Trait Implementations§
impl Freeze for GlobalResponse
impl RefUnwindSafe for GlobalResponse
impl Send for GlobalResponse
impl Sync for GlobalResponse
impl Unpin for GlobalResponse
impl UnsafeUnpin for GlobalResponse
impl UnwindSafe for GlobalResponse
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<T> Conv for T
impl<T> Conv for T
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§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
§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> 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>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the foreground set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red() and
green(), which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg():
use yansi::{Paint, Color};
painted.fg(Color::White);Set foreground color to white using white().
use yansi::Paint;
painted.white();§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the background set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red() and
on_green(), which have the same functionality but
are pithier.
§Example
Set background color to red using fg():
use yansi::{Paint, Color};
painted.bg(Color::Red);Set background color to red using on_red().
use yansi::Paint;
painted.on_red();§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling [Attribute] value.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold() and
underline(), which have the same functionality
but are pithier.
§Example
Make text bold using attr():
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);Make text bold using using bold().
use yansi::Paint;
painted.bold();§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi [Quirk] value.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask() and
wrap(), which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk():
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);Enable wrapping using wrap().
use yansi::Paint;
painted.wrap();§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
fn clear(&self) -> Painted<&T>
renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the [Condition] value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted only when both stdout and stderr are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);§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> 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.