Enum Event

Source
pub enum Event {
Show 16 variants Breakpoint(BreakpointEventBody), Capabilities(CapabilitiesEventBody), Continued(ContinuedEventBody), Exited(ExitedEventBody), Initialized, Invalidated(InvalidatedEventBody), LoadedSource(LoadedSourceEventBody), Module(ModuleEventBody), Output(OutputEventBody), Process(ProcessEventBody), ProgressEnd(ProgressEndEventBody), ProgressStart(ProgressStartEventBody), ProgressUpdate(ProgressUpdateEventBody), Stopped(StoppedEventBody), Terminated(TerminatedEventBody), Thread(ThreadEventBody),
}
Expand description

A debug adapter initiated event.

Variants§

§

Breakpoint(BreakpointEventBody)

The event indicates that some information about a breakpoint has changed.

§

Capabilities(CapabilitiesEventBody)

The event indicates that one or more capabilities have changed.

Since the capabilities are dependent on the frontend and its UI, it might not be possible to change that at random times (or too late).

Consequently this event has a hint characteristic: a frontend can only be expected to make a ‘best effort’ in honouring individual capabilities but there are no guarantees.

Only changed capabilities need to be included, all other capabilities keep their values.

§

Continued(ContinuedEventBody)

The event indicates that the execution of the debuggee has continued.

Please note: a debug adapter is not expected to send this event in response to a request that implies that execution continues, e.g. ‘launch’ or ‘continue’.

It is only necessary to send a ‘continued’ event if there was no previous request that implied this.

§

Exited(ExitedEventBody)

The event indicates that the debuggee has exited and returns its exit code.

§

Initialized

This event indicates that the debug adapter is ready to accept configuration requests (e.g. SetBreakpointsRequest, SetExceptionBreakpointsRequest).

A debug adapter is expected to send this event when it is ready to accept configuration requests (but not before the ‘initialize’ request has finished).

The sequence of events/requests is as follows:

  • adapters sends ‘initialized’ event (after the ‘initialize’ request has returned)

  • frontend sends zero or more ‘setBreakpoints’ requests

  • frontend sends one ‘setFunctionBreakpoints’ request (if capability ‘supportsFunctionBreakpoints’ is true)

  • frontend sends a ‘setExceptionBreakpoints’ request if one or more ‘exceptionBreakpointFilters’ have been defined (or if ‘supportsConfigurationDoneRequest’ is not defined or false)

  • frontend sends other future configuration requests

  • frontend sends one ‘configurationDone’ request to indicate the end of the configuration.

§

Invalidated(InvalidatedEventBody)

This event signals that some state in the debug adapter has changed and requires that the client needs to re-render the data snapshot previously requested.

Debug adapters do not have to emit this event for runtime changes like stopped or thread events because in that case the client refetches the new state anyway. But the event can be used for example to refresh the UI after rendering formatting has changed in the debug adapter.

This event should only be sent if the debug adapter has received a value true for the ‘supportsInvalidatedEvent’ capability of the ‘initialize’ request.

§

LoadedSource(LoadedSourceEventBody)

The event indicates that some source has been added, changed, or removed from the set of all loaded sources.

§

Module(ModuleEventBody)

The event indicates that some information about a module has changed.

§

Output(OutputEventBody)

The event indicates that the target has produced some output.

§

Process(ProcessEventBody)

The event indicates that the debugger has begun debugging a new process. Either one that it has launched, or one that it has attached to.

§

ProgressEnd(ProgressEndEventBody)

The event signals the end of the progress reporting with an optional final message.

This event should only be sent if the client has passed the value true for the ‘supportsProgressReporting’ capability of the ‘initialize’ request.

§

ProgressStart(ProgressStartEventBody)

The event signals that a long running operation is about to start and

provides additional information for the client to set up a corresponding progress and cancellation UI.

The client is free to delay the showing of the UI in order to reduce flicker.

This event should only be sent if the client has passed the value true for the ‘supportsProgressReporting’ capability of the ‘initialize’ request.

§

ProgressUpdate(ProgressUpdateEventBody)

The event signals that the progress reporting needs to updated with a new message and/or percentage.

The client does not have to update the UI immediately, but the clients needs to keep track of the message and/or percentage values.

This event should only be sent if the client has passed the value true for the ‘supportsProgressReporting’ capability of the ‘initialize’ request.

§

Stopped(StoppedEventBody)

The event indicates that the execution of the debuggee has stopped due to some condition.

This can be caused by a break point previously set, a stepping request has completed, by executing a debugger statement etc.

§

Terminated(TerminatedEventBody)

The event indicates that debugging of the debuggee has terminated. This does not mean that the debuggee itself has exited.

§

Thread(ThreadEventBody)

The event indicates that a thread has started or exited.

Trait Implementations§

Source§

impl Clone for Event

Source§

fn clone(&self) -> Event

Returns a duplicate of the value. Read more
1.0.0 · Source§

const fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Event

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for Event

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl From<BreakpointEventBody> for Event

Source§

fn from(body: BreakpointEventBody) -> Self

Converts to this type from the input type.
Source§

impl From<CapabilitiesEventBody> for Event

Source§

fn from(body: CapabilitiesEventBody) -> Self

Converts to this type from the input type.
Source§

impl From<ContinuedEventBody> for Event

Source§

fn from(body: ContinuedEventBody) -> Self

Converts to this type from the input type.
Source§

impl From<Event> for ProtocolMessageContent

Source§

fn from(event: Event) -> Self

Converts to this type from the input type.
Source§

impl From<ExitedEventBody> for Event

Source§

fn from(body: ExitedEventBody) -> Self

Converts to this type from the input type.
Source§

impl From<InvalidatedEventBody> for Event

Source§

fn from(body: InvalidatedEventBody) -> Self

Converts to this type from the input type.
Source§

impl From<LoadedSourceEventBody> for Event

Source§

fn from(body: LoadedSourceEventBody) -> Self

Converts to this type from the input type.
Source§

impl From<ModuleEventBody> for Event

Source§

fn from(body: ModuleEventBody) -> Self

Converts to this type from the input type.
Source§

impl From<OutputEventBody> for Event

Source§

fn from(body: OutputEventBody) -> Self

Converts to this type from the input type.
Source§

impl From<ProcessEventBody> for Event

Source§

fn from(body: ProcessEventBody) -> Self

Converts to this type from the input type.
Source§

impl From<ProgressEndEventBody> for Event

Source§

fn from(body: ProgressEndEventBody) -> Self

Converts to this type from the input type.
Source§

impl From<ProgressStartEventBody> for Event

Source§

fn from(body: ProgressStartEventBody) -> Self

Converts to this type from the input type.
Source§

impl From<ProgressUpdateEventBody> for Event

Source§

fn from(body: ProgressUpdateEventBody) -> Self

Converts to this type from the input type.
Source§

impl From<StoppedEventBody> for Event

Source§

fn from(body: StoppedEventBody) -> Self

Converts to this type from the input type.
Source§

impl From<TerminatedEventBody> for Event

Source§

fn from(body: TerminatedEventBody) -> Self

Converts to this type from the input type.
Source§

impl From<ThreadEventBody> for Event

Source§

fn from(body: ThreadEventBody) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for Event

Source§

fn eq(&self, other: &Event) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

const fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for Event

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl Eq for Event

Source§

impl StructuralPartialEq for Event

Auto Trait Implementations§

§

impl Freeze for Event

§

impl RefUnwindSafe for Event

§

impl Send for Event

§

impl Sync for Event

§

impl Unpin for Event

§

impl UnwindSafe for Event

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,