다음을 통해 공유


Microsoft.PowerFx.LanguageServerProtocol Namespace

Classes

CodeActionKind

Code action kind constants.

CommandName

Command name constants.

Fx2NLParameters

Additional context passed from Fx2NL. This should be information that we can't get from a CheckResult.

JsonRpcHelper

JSON-RPC helper class that follows JSON-RPC 2.0 spec https://www.jsonrpc.org/specification.

LanguageServer

PowerFx Language server implementation

LanguageServer can receive request/notification payload from client, it can also send request/notification to client.

LanguageServer is hosted inside WebSocket or HTTP/HTTPS service

  • For WebSocket, OnDataReceived() is for incoming traffic, SendToClient() is for outgoing traffic
  • For HTTP/HTTPS, OnDataReceived() is for HTTP/HTTPS request, SendToClient() is queued up in next HTTP/HTTPS response.
LanguageServerInput

Represents the input to the language server.

LanguageServerOutput

A representation of the output of a language server.

LanguageServerOutputBuilder

An output builder to build Language Server Output. Lifecycle: A new instance of the builder should be created for each request. Can hold more than one output and also different types of outputs. Request/Notification Hanlders are free to add multiple outputs to the builder.

NL2FxParameters

Resolved from CustomNL2FxParams.

NLHandler

Callback handler invoked by LanguageServer to handle NL requests.

UsageHints

Additional context that can help explain an expression. This is purely optional and used for heuristics.

Interfaces

IAsyncNLHandlerFactory
IHostTaskExecutor

A task executor that can be used to execute LSP tasks in the host environment.

ILanguageServerLogger

Logger interface for language server.

INLHandlerFactory

Represents a factory for creating NLHandler.

IPowerFxScopeFx2NL

Additional methods to get Fx2NL context. Hosts should prefer to use EditorContextScope directly.

Enums

JsonRpcHelper.ErrorCode

Delegates

LanguageServer.NotifyDidChange
LanguageServer.OnLogUnhandledExceptionHandler
LanguageServer.SendToClient