MCPcopy Create free account
hub / github.com/bytebase/bytebase / newCompleter

Function newCompleter

backend/plugin/parser/tsql/completion.go:484–500  ·  view source on GitHub ↗
(ctx context.Context, cCtx base.CompletionContext, sql string, byteOffset int)

Source from the content-addressed store, hash-verified

482}
483
484func newCompleter(ctx context.Context, cCtx base.CompletionContext, sql string, byteOffset int) *Completer {
485 tokens := mssqlparser.Tokenize(sql)
486
487 return &Completer{
488 ctx: ctx,
489 scene: cCtx.Scene,
490 sql: sql,
491 cursorByteOffset: byteOffset,
492 tokens: tokens,
493 caretTokenIndex: findCaretTokenIndex(tokens, byteOffset),
494 instanceID: cCtx.InstanceID,
495 defaultDatabase: cCtx.DefaultDatabase,
496 defaultSchema: "dbo",
497 metadataGetter: cCtx.Metadata,
498 databaseNamesLister: cCtx.ListDatabaseNames,
499 }
500}
501
502func computeSQLAndByteOffset(statement string, caretLine int, caretOffset int, tricky bool) (string, int) {
503 sql, newLine, newOffset := skipHeadingSQLs(statement, caretLine, caretOffset)

Callers 2

NewStandardCompleterFunction · 0.70
NewTrickyCompleterFunction · 0.70

Calls 1

findCaretTokenIndexFunction · 0.70

Tested by

no test coverage detected