CIRCT 22.0.0git
Loading...
Searching...
No Matches
Namespaces | Classes | Typedefs | Functions
circt::lsp Namespace Reference

Namespaces

namespace  Logger
 

Classes

struct  DebounceOptions
 Debounce tuning for document-change bursts. More...
 
class  LSPDiagnosticClient
 
struct  LSPServerOptions
 
struct  PendingChanges
 Accumulated edits + timing for a single document key. More...
 
class  PendingChangesMap
 Thread-safe accumulator + debouncer for text document changes. More...
 
class  VerilogDocument
 
class  VerilogIndex
 
class  VerilogServer
 This class implements all of the Verilog related functionality necessary for a language server. More...
 
struct  VerilogServerContext
 
struct  VerilogServerOptions
 
class  VerilogTextFile
 This class represents a text file containing one or more Verilog documents. More...
 

Typedefs

using VerilogIndexSymbol = llvm::PointerUnion< const slang::ast::Symbol *, mlir::Attribute >
 
using ReferenceMap = llvm::SmallDenseMap< const slang::ast::Symbol *, llvm::SmallVector< slang::SourceRange > >
 
using SlangBufferPointer = char const *
 
using MapT = llvm::IntervalMap< SlangBufferPointer, VerilogIndexSymbol, llvm::IntervalMapImpl::NodeSizer< SlangBufferPointer, VerilogIndexSymbol >::LeafSize, llvm::IntervalMapHalfOpenInfo< const SlangBufferPointer > >
 
using TextDocumentContentChangeEvent = llvm::lsp::TextDocumentContentChangeEvent
 
using URIForFile = llvm::lsp::URIForFile
 
using Diagnostic = llvm::lsp::Diagnostic
 

Functions

llvm::LogicalResult CirctVerilogLspServerMain (const LSPServerOptions &lspOptions, const VerilogServerOptions &options, llvm::lsp::JSONTransport &transport)
 Implementation for tools like circt-verilog-lsp-server.
 
llvm::LogicalResult runVerilogLSPServer (const LSPServerOptions &lspOptions, VerilogServer &server, llvm::lsp::JSONTransport &transport)
 Run the main loop of the LSP server using the given Verilog server and transport.
 
static llvm::ThreadPoolStrategy makeStrategy (unsigned maxThreads)
 Build a pool strategy with a sensible minimum.
 

Typedef Documentation

◆ Diagnostic

using circt::lsp::Diagnostic = typedef llvm::lsp::Diagnostic

Definition at line 44 of file VerilogServer.h.

◆ MapT

using circt::lsp::MapT = typedef llvm::IntervalMap<SlangBufferPointer, VerilogIndexSymbol, llvm::IntervalMapImpl::NodeSizer< SlangBufferPointer, VerilogIndexSymbol>::LeafSize, llvm::IntervalMapHalfOpenInfo<const SlangBufferPointer> >

Definition at line 32 of file VerilogIndex.h.

◆ ReferenceMap

using circt::lsp::ReferenceMap = typedef llvm::SmallDenseMap<const slang::ast::Symbol *, llvm::SmallVector<slang::SourceRange> >

Definition at line 29 of file VerilogIndex.h.

◆ SlangBufferPointer

using circt::lsp::SlangBufferPointer = typedef char const *

Definition at line 31 of file VerilogIndex.h.

◆ TextDocumentContentChangeEvent

using circt::lsp::TextDocumentContentChangeEvent = typedef llvm::lsp::TextDocumentContentChangeEvent

Definition at line 41 of file VerilogServer.h.

◆ URIForFile

using circt::lsp::URIForFile = typedef llvm::lsp::URIForFile

Definition at line 43 of file VerilogServer.h.

◆ VerilogIndexSymbol

using circt::lsp::VerilogIndexSymbol = typedef llvm::PointerUnion<const slang::ast::Symbol *, mlir::Attribute>

Definition at line 27 of file VerilogIndex.h.

Function Documentation

◆ CirctVerilogLspServerMain()

llvm::LogicalResult circt::lsp::CirctVerilogLspServerMain ( const LSPServerOptions lspOptions,
const VerilogServerOptions options,
llvm::lsp::JSONTransport &  transport 
)

Implementation for tools like circt-verilog-lsp-server.

Definition at line 14 of file CirctVerilogLspServerMain.cpp.

References runVerilogLSPServer(), and server.

◆ makeStrategy()

static llvm::ThreadPoolStrategy circt::lsp::makeStrategy ( unsigned  maxThreads)
static

Build a pool strategy with a sensible minimum.

Definition at line 28 of file PendingChanges.h.

◆ runVerilogLSPServer()

llvm::LogicalResult circt::lsp::runVerilogLSPServer ( const LSPServerOptions lspOptions,
VerilogServer server,
llvm::lsp::JSONTransport &  transport 
)

Run the main loop of the LSP server using the given Verilog server and transport.

Referenced by CirctVerilogLspServerMain().