ExTypesense.Stemming (ExTypesense v1.2.1)

View Source

Stemming specific operations.

More here: https://typesense.org/docs/latest/api/stemming.html

Summary

Functions

get_stemming_dictionary(dictionary_id)

(since 1.2.0)
@spec get_stemming_dictionary(String.t()) ::
  {:ok, OpenApiTypesense.StemmingDictionary.t()}
  | {:error, OpenApiTypesense.ApiResponse.t()}

Retrieve a stemming dictionary

Fetch details of a specific stemming dictionary.

get_stemming_dictionary(dictionary_id, opts)

(since 1.2.0)
@spec get_stemming_dictionary(
  map() | OpenApiTypesense.Connection.t() | String.t(),
  String.t() | keyword()
) ::
  {:ok, OpenApiTypesense.StemmingDictionary.t()}
  | {:error, OpenApiTypesense.ApiResponse.t()}

Same as get_stemming_dictionary/1

ExTypesense.get_stemming_dictionary(dictionary_id, [])

ExTypesense.get_stemming_dictionary(%{api_key: xyz, host: ...}, dictionary_id)

ExTypesense.get_stemming_dictionary(OpenApiTypesense.Connection.new(), dictionary_id)

get_stemming_dictionary(conn, dictionary_id, opts)

(since 1.2.0)
@spec get_stemming_dictionary(
  map() | OpenApiTypesense.Connection.t(),
  String.t(),
  keyword()
) ::
  {:ok, OpenApiTypesense.StemmingDictionary.t()}
  | {:error, OpenApiTypesense.ApiResponse.t()}

Same as get_stemming_dictionary/2 but passes another connection.

ExTypesense.get_stemming_dictionary(%{api_key: xyz, host: ...}, dictionary_id, [])

ExTypesense.get_stemming_dictionary(OpenApiTypesense.Connection.new(), dictionary_id, [])

import_stemming_dictionary(body, opts)

(since 1.2.0)
@spec import_stemming_dictionary(
  [map()],
  keyword()
) :: {:ok, String.t()} | {:error, OpenApiTypesense.ApiResponse.t()}

Import a stemming dictionary

Options

  • id: The ID to assign to the dictionary

Example

iex> body = [
...>   %{"word" => "people", "root" => "person"}
...>   %{"word" => "children", "root" => "child"}
...>   %{"word" => "geese", "root" => "goose"}
...> ]
iex> ExTypesense.import_stemming_dictionary(body, id: "irregular-plurals")

import_stemming_dictionary(conn, body, opts)

(since 1.2.0)
@spec import_stemming_dictionary(
  map() | OpenApiTypesense.Connection.t(),
  [map()],
  keyword()
) ::
  {:ok, String.t()} | {:error, OpenApiTypesense.ApiResponse.t()}

Same as import_stemming_dictionary/2 but passes another connection.

Either one of:

  • import_stemming_dictionary(%{api_key: xyz, host: ...}, body, id: "something")
  • import_stemming_dictionary(dictionary_id, Connection.new(), body, id: "some-id")

list_stemming_dictionaries()

(since 1.2.0)
@spec list_stemming_dictionaries() ::
  {:ok, map()} | {:error, OpenApiTypesense.ApiResponse.t()}

List all stemming dictionaries

list_stemming_dictionaries(opts)

(since 1.2.0)
@spec list_stemming_dictionaries(map() | OpenApiTypesense.Connection.t() | keyword()) ::
  {:ok, map()} | {:error, OpenApiTypesense.ApiResponse.t()}

Same as list_stemming_dictionaries/0

ExTypesense.list_stemming_dictionaries([])

ExTypesense.list_stemming_dictionaries(%{api_key: xyz, host: ...})

ExTypesense.list_stemming_dictionaries(OpenApiTypesense.Connection.new())

list_stemming_dictionaries(conn, opts)

(since 1.2.0)
@spec list_stemming_dictionaries(
  map() | OpenApiTypesense.Connection.t(),
  keyword()
) :: {:ok, map()} | {:error, OpenApiTypesense.ApiResponse.t()}

Same as list_stemming_dictionaries/1 but passes another connection.

ExTypesense.list_stemming_dictionaries(%{api_key: xyz, host: ...}, [])

ExTypesense.list_stemming_dictionaries(OpenApiTypesense.Connection.new(), [])