@marianfoo/adt-ls - v0.4.1
    Preparing search index...

    Interface Navigation

    LSP code-intelligence surface (the navigation namespace). Positions are a declared symbol name or explicit 1-based line + character.

    interface Navigation {
        checkSyntax(ref: ObjectRef): Promise<unknown>;
        completion(
            ref: ObjectRef,
            locator: Locator,
            opts?: { maxItems?: number; resolve?: boolean; resolveLimit?: number },
        ): Promise<unknown>;
        documentHighlight(ref: ObjectRef, locator: Locator): Promise<unknown>;
        documentSymbols(ref: ObjectRef): Promise<unknown>;
        findReferences(
            ref: ObjectRef,
            locator: Locator,
            opts?: { includeDeclaration?: boolean; timeoutMs?: number },
        ): Promise<unknown>;
        format(
            ref: ObjectRef,
            opts?: { insertSpaces?: boolean; tabSize?: number },
        ): Promise<{ edits: TextEdit[]; formatted: string }>;
        goToDeclaration(ref: ObjectRef, locator: Locator): Promise<unknown>;
        goToDefinition(ref: ObjectRef, locator: Locator): Promise<unknown>;
        hover(ref: ObjectRef, locator: Locator): Promise<unknown>;
        semanticTokens(
            ref: ObjectRef,
        ): Promise<{ legend: SemanticTokensLegend; tokens: DecodedToken[] }>;
        typeHierarchy(
            ref: ObjectRef,
            locator: Locator,
            opts?: { direction?: "supertypes" | "subtypes" | "both" },
        ): Promise<unknown>;
    }
    Index

    Methods

    • Code completion at a position (capped — lists are huge). When resolve is set, each returned item is enriched via completionItem/resolve (adds signatures / ABAP-Doc).

      Parameters

      • ref: ObjectRef
      • locator: Locator
      • Optionalopts: { maxItems?: number; resolve?: boolean; resolveLimit?: number }

      Returns Promise<unknown>

    • Object outline (LSP DocumentSymbol[] — kinds + ranges + children).

      Parameters

      Returns Promise<unknown>

    • Where-used (Location[]). Timeout-guarded — heavily-used globals can hang.

      Parameters

      • ref: ObjectRef
      • locator: Locator
      • Optionalopts: { includeDeclaration?: boolean; timeoutMs?: number }

      Returns Promise<unknown>

    • Format source via the ABAP Pretty-Printer (whole document). Returns the formatted source plus the raw LSP TextEdit[]. (tabSize/insertSpaces are passed through; the pretty-printer largely applies its own ABAP rules.)

      Parameters

      • ref: ObjectRef
      • Optionalopts: { insertSpaces?: boolean; tabSize?: number }

      Returns Promise<{ edits: TextEdit[]; formatted: string }>

    • Inheritance / implementation tree (prepare → super/sub).

      Parameters

      • ref: ObjectRef
      • locator: Locator
      • Optionalopts: { direction?: "supertypes" | "subtypes" | "both" }

      Returns Promise<unknown>