Exograph.Storage.Ecto.InvertedIndex (exograph v0.8.0)

Copy Markdown View Source

Ecto candidate retrieval backend with backend-specific text-search paths.

Structural lookups use the terms integer[] GIN index on Postgres and a normalized candidate table on DuckDB. Term strings are normalized to integer IDs in the terms table before querying.

Summary

Types

t()

@type t() :: %Exograph.Storage.Ecto.InvertedIndex{
  bm25?: boolean(),
  package: Exograph.Package.t() | nil,
  package_version: Exograph.PackageVersion.t() | nil,
  prefix: String.t(),
  repo: module()
}

Functions

add(index, fragments)

new(opts \\ [])

resolve_term_ids(index, terms)

search(index, query, opts \\ [])

search_callees(index, caller, opts \\ [])

search_callers(index, callee, opts \\ [])

search_comments(index, literal, opts \\ [])

search_definitions(index, literal, opts \\ [])

search_references(index, literal, opts \\ [])

search_text(index, literal, opts \\ [])

search_text_regex(index, regex, opts)