Table of Contents

Class ExitingServerState

Namespace
RDCore.SDK.Server.Services.States
Assembly
RDCore.SDK.dll

The LSP Server application has received an Exit notification and the process will exit with the ExitCode value.

public record ExitingServerState : ServerState, IEquatable<ServerState>, IEquatable<ExitingServerState>
Inheritance
ExitingServerState
Implements
Inherited Members

Remarks

👉 ExitCode is an error code unless a Shutdown request preceded the Exit notification — unconditionally, per spec, even when Exit arrives before Initialize. A client sending a bare Exit to terminate a server it never initialized is not itself a protocol violation, but it still exits with code 1 since no Shutdown preceded it.
Server lifecycle § Exit Notification

Constructors

ExitingServerState(ServerStateValue)

The LSP Server application has received an Exit notification and the process will exit with the ExitCode value.

public ExitingServerState(ServerStateValue PreviousState)

Parameters

PreviousState ServerStateValue

The previous server state.

Remarks

👉 ExitCode is an error code unless a Shutdown request preceded the Exit notification — unconditionally, per spec, even when Exit arrives before Initialize. A client sending a bare Exit to terminate a server it never initialized is not itself a protocol violation, but it still exits with code 1 since no Shutdown preceded it.
Server lifecycle § Exit Notification

Properties

ExitCode

The exit code that the application process should use to exit.

public override int ExitCode { get; }

Property Value

int

PreviousState

The previous server state.

public ServerStateValue PreviousState { get; init; }

Property Value

ServerStateValue