internal/langserver/handlers/did_open.go (26 lines of code) (raw):

package handlers import ( "context" lsctx "github.com/Azure/azapi-lsp/internal/context" "github.com/Azure/azapi-lsp/internal/langserver/handlers/validate" ilsp "github.com/Azure/azapi-lsp/internal/lsp" lsp "github.com/Azure/azapi-lsp/internal/protocol" ) func (lh *logHandler) TextDocumentDidOpen(ctx context.Context, params lsp.DidOpenTextDocumentParams) error { fs, err := lsctx.DocumentStorage(ctx) if err != nil { return err } f := ilsp.FileFromDocumentItem(params.TextDocument) err = fs.CreateAndOpenDocument(f, f.LanguageID(), f.Text()) if err != nil { return err } notifier, err := lsctx.DiagnosticsNotifier(ctx) if err != nil { return err } diags := validate.NewDiagnostics(f.Text(), f.Filename()) notifier.PublishHCLDiags(ctx, f.Dir(), diags) return nil }