server

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 22, 2024 License: Apache-2.0 Imports: 31 Imported by: 0

Documentation

Index

Constants

View Source
const GetContractInitializerParametersCommand = "cadence.server.getContractInitializerParameters"
View Source
const GetEntryPointParametersCommand = "cadence.server.getEntryPointParameters"
View Source
const ParseEntryPointArgumentsCommand = "cadence.server.parseEntryPointArguments"

Variables

This section is empty.

Functions

func CheckCommandArgumentCount

func CheckCommandArgumentCount(args []json.RawMessage, expectedCount int) error

Types

type AddressContractNamesResolver

type AddressContractNamesResolver func(address common.Address) ([]string, error)

AddressContractNamesResolver is a function that is used to resolve contract names of an address

type AddressImportResolver

type AddressImportResolver func(location common.AddressLocation) (string, error)

AddressImportResolver is a function that is used to resolve address imports

type CadenceCheckCompletedParams

type CadenceCheckCompletedParams struct {

	/*URI defined:
	 * The URI which was checked.
	 */
	URI protocol.DocumentURI `json:"uri"`

	Valid bool `json:"valid"`
}

type CodeActionResolver added in v0.32.0

type CodeActionResolver func() []*protocol.CodeAction

type CodeLensProvider

type CodeLensProvider func(uri protocol.DocumentURI, version int32, checker *sema.Checker) ([]*protocol.CodeLens, error)

CodeLensProvider is a function that is used to provide code lenses for the given checker

type Command

type Command struct {
	Name    string
	Handler CommandHandler
}

type CommandHandler

type CommandHandler func(args ...json2.RawMessage) (interface{}, error)

CommandHandler represents the form of functions that handle commands submitted from the client using workspace/executeCommand.

type CompletionItemData

type CompletionItemData struct {
	URI protocol.DocumentURI `json:"uri"`
	ID  string               `json:"id"`
}

type DiagnosticProvider

type DiagnosticProvider func(uri protocol.DocumentURI, version int32, checker *sema.Checker) ([]protocol.Diagnostic, error)

DiagnosticProvider is a function that is used to provide diagnostics for the given checker

type Document

type Document struct {
	Text    string
	Version int32
}

Document represents an open document on the client. It contains all cached information about each document that is used to support CodeLens, transaction submission, and script execution.

func (Document) HasAnyPrecedingStringsAtPosition

func (d Document) HasAnyPrecedingStringsAtPosition(options []string, line, column int) bool

func (Document) Offset

func (d Document) Offset(line, column int) (offset int)

type DocumentSymbolProvider

type DocumentSymbolProvider func(uri protocol.DocumentURI, version int32, checker *sema.Checker) ([]*protocol.DocumentSymbol, error)

DocumentSymbolProvider is a function that is used to provide document symbols for the given checker

type InitializationOptionsHandler

type InitializationOptionsHandler func(initializationOptions any) error

InitializationOptionsHandler is a function that is used to handle initialization options sent by the client

type ObjectStream

type ObjectStream struct {
	// contains filtered or unexported fields
}

func NewObjectStream

func NewObjectStream(
	writeObject func(obj any) error,
	readObject func(v any) error,
	close func() error,
) ObjectStream

func (ObjectStream) Close

func (o ObjectStream) Close() error

func (ObjectStream) ReadObject

func (o ObjectStream) ReadObject(v any) (err error)

func (ObjectStream) WriteObject

func (o ObjectStream) WriteObject(obj any) error

type Option

type Option func(*Server) error

func WithAddressContractNamesResolver

func WithAddressContractNamesResolver(resolver AddressContractNamesResolver) Option

WithAddressContractNamesResolver returns a server option that sets the given function as the function that is used to resolve contract names of an address

func WithAddressImportResolver

func WithAddressImportResolver(resolver AddressImportResolver) Option

WithAddressImportResolver returns a server option that sets the given function as the function that is used to resolve address imports

func WithCodeLensProvider

func WithCodeLensProvider(provider CodeLensProvider) Option

WithCodeLensProvider returns a server option that adds the given function as a function that is used to generate code lenses

func WithCommand

func WithCommand(command Command) Option

WithCommand returns a server options that adds the given command to the set of commands provided by the server to the client.

If a command with the given name already exists, the option fails.

func WithDiagnosticProvider

func WithDiagnosticProvider(provider DiagnosticProvider) Option

WithDiagnosticProvider returns a server option that adds the given function as a function that is used to generate diagnostics

func WithExtendedStandardLibraryValues added in v1.0.0

func WithExtendedStandardLibraryValues(values ...stdlib.StandardLibraryValue) Option

WithStandardLibraryValues returns a server option that adds the given function as a function that is used to resolve standard library values (in addition to the default standard library)

This is used to provide parts of the standard library that are present in some given environment but are not native to the language.

func WithInitializationOptionsHandler

func WithInitializationOptionsHandler(handler InitializationOptionsHandler) Option

WithInitializationOptionsHandler returns a server option that adds the given function as a function that is used to handle initialization options sent by the client

func WithMemberAccountAccessHandler added in v0.6.0

func WithMemberAccountAccessHandler(handler sema.MemberAccountAccessHandlerFunc) Option

WithMemberAccountAccessHandler returns a server option that adds the given function as a function that is used to determine access for accounts.

When we have a syntax like access(account) this handler is called and determines whether the access is allowed based on the location of program and the called member.

func WithStringImportResolver

func WithStringImportResolver(resolver StringImportResolver) Option

WithStringImportResolver returns a server option that sets the given function as the function that is used to resolve string imports

type Parameter

type Parameter struct {
	Name string `json:"name"`
	Type string `json:"type"`
}

type Server

type Server struct {
	// contains filtered or unexported fields
}

func NewServer

func NewServer() (*Server, error)

func (*Server) CodeAction

func (s *Server) CodeAction(
	_ protocol.Conn,
	params *protocol.CodeActionParams,
) (
	codeActions []*protocol.CodeAction,
	err error,
)

func (*Server) CodeLens

func (s *Server) CodeLens(
	_ protocol.Conn,
	params *protocol.CodeLensParams,
) (
	codeLenses []*protocol.CodeLens,
	err error,
)

CodeLens is called every time the document contents change and returns a list of actions to be injected into the source as inline buttons.

func (*Server) Completion

func (s *Server) Completion(
	_ protocol.Conn,
	params *protocol.CompletionParams,
) (
	items []*protocol.CompletionItem,
	err error,
)

Completion is called to compute completion items at a given cursor position.

func (*Server) Definition

func (s *Server) Definition(
	_ protocol.Conn,
	params *protocol.TextDocumentPositionParams,
) (
	*protocol.Location,
	error,
)

Definition finds the definition of the type at the given location.

func (*Server) DidChangeConfiguration added in v0.6.0

func (s *Server) DidChangeConfiguration(_ protocol.Conn, params *protocol.DidChangeConfigurationParams) (any, error)

DidChangeConfiguration is called to propagate new values set in the client configuration.

func (*Server) DidChangeTextDocument

func (s *Server) DidChangeTextDocument(
	conn protocol.Conn,
	params *protocol.DidChangeTextDocumentParams,
) error

DidChangeTextDocument is called whenever the current document changes. We parse and check the text and publish diagnostics about the document.

func (*Server) DidOpenTextDocument

func (s *Server) DidOpenTextDocument(conn protocol.Conn, params *protocol.DidOpenTextDocumentParams) error

DidOpenTextDocument is called whenever a new file is opened. We parse and check the text and publish diagnostics about the document.

func (*Server) DocumentHighlight

func (s *Server) DocumentHighlight(
	_ protocol.Conn,
	params *protocol.TextDocumentPositionParams,
) (
	[]*protocol.DocumentHighlight,
	error,
)
func (s *Server) DocumentLink(
	_ protocol.Conn,
	_ *protocol.DocumentLinkParams,
) (
	symbols []*protocol.DocumentLink,
	err error,
)

func (*Server) DocumentSymbol

func (s *Server) DocumentSymbol(
	_ protocol.Conn,
	params *protocol.DocumentSymbolParams,
) (
	symbols []*protocol.DocumentSymbol,
	err error,
)

DocumentSymbol is called every time the document contents change and returns a tree of known document symbols, which can be shown in outline panel

func (*Server) ExecuteCommand

func (s *Server) ExecuteCommand(conn protocol.Conn, params *protocol.ExecuteCommandParams) (any, error)

ExecuteCommand is called to execute a custom, server-defined command.

We register all the commands we support in registerCommands and populate their corresponding handler at server initialization.

func (*Server) Exit

func (*Server) Exit(_ protocol.Conn) error

Exit exits the process.

func (*Server) GetDocument

func (s *Server) GetDocument(uri protocol.DocumentURI) (doc Document, ok bool)

func (*Server) Hover

Hover returns contextual type information about the variable at the given location.

func (*Server) Initialize

func (s *Server) Initialize(
	conn protocol.Conn,
	params *protocol.InitializeParams,
) (
	*protocol.InitializeResult,
	error,
)

func (*Server) InlayHint

func (s *Server) InlayHint(
	_ protocol.Conn,
	params *protocol.InlayHintParams,
) (
	inlayHints []*protocol.InlayHint,
	err error,
)

func (*Server) Rename

func (s *Server) Rename(
	_ protocol.Conn,
	params *protocol.RenameParams,
) (
	*protocol.WorkspaceEdit,
	error,
)

func (*Server) ResolveCompletionItem

func (s *Server) ResolveCompletionItem(
	_ protocol.Conn,
	item *protocol.CompletionItem,
) (
	result *protocol.CompletionItem,
	err error,
)

ResolveCompletionItem is called to compute completion items at a given cursor position.

func (*Server) SetOptions

func (s *Server) SetOptions(options ...Option) error

func (*Server) Shutdown

func (*Server) Shutdown(conn protocol.Conn) error

Shutdown tells the server to stop accepting any new requests. This can only be followed by a call to Exit, which exits the process.

func (*Server) SignatureHelp

func (s *Server) SignatureHelp(
	_ protocol.Conn,
	params *protocol.TextDocumentPositionParams,
) (*protocol.SignatureHelp, error)

func (*Server) Start

func (s *Server) Start(stream jsonrpc2.ObjectStream) <-chan struct{}

func (*Server) Stop

func (s *Server) Stop() error

type StdinStdoutReadWriterCloser

type StdinStdoutReadWriterCloser struct{}

StdinStdoutReadWriterCloser implements an io.ReadWriter and io.Closer around STDIN and STDOUT.

func (StdinStdoutReadWriterCloser) Close

Close closes STDIN and STDOUT.

func (StdinStdoutReadWriterCloser) Read

Read reads from STDIN.

func (StdinStdoutReadWriterCloser) Write

func (StdinStdoutReadWriterCloser) Write(p []byte) (int, error)

Write writes to STDOUT.

type StringImportResolver

type StringImportResolver func(location common.StringLocation) (string, error)

StringImportResolver is a function that is used to resolve string imports

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL