AshNeo4j.BoltxHelper (AshNeo4j v0.2.2)

View Source

AshNeo4j BoltxHelper

Summary

Functions

Converts an Elixir Duration to a Boltx.Types.Duration

Checks Boltx connectivity

Starts Boltx, returns :ok or {:error, error}

Starts Boltx with config, returns :ok or {:error, error}

Converts a Boltx.Types.Duration to cypher

Converts a Boltx.Types.Duration to an Elixir Duration

Functions

from_elixir_duration(value)

@spec from_elixir_duration(%{
  optional(:day) => integer(),
  optional(:hour) => integer(),
  optional(:minute) => integer(),
  optional(:month) => integer(),
  optional(:second) => integer(),
  optional(:week) => integer(),
  optional(:year) => integer(),
  optional(any()) => any()
}) :: Boltx.Types.Duration.t()

Converts an Elixir Duration to a Boltx.Types.Duration

Examples

iex> AshNeo4j.BoltxHelper.from_elixir_duration(Duration.new!(%{year: 1, month: 2, week: 3, day: 4, hour: 5, minute: 6, second: 7, microsecond: {8, 6}}))
%Boltx.Types.Duration{years: 1, months: 2, weeks: 0, days: 25, hours: 5, minutes: 6, seconds: 7, nanoseconds: 8000}

iex> AshNeo4j.BoltxHelper.from_elixir_duration(Duration.new!(%{month: 1}))
%Boltx.Types.Duration{years: 0, months: 1, weeks: 0, days: 0, hours: 0, minutes: 0, seconds: 0, nanoseconds: 0}

is_connected()

Checks Boltx connectivity

start()

Starts Boltx, returns :ok or {:error, error}

start(config)

Starts Boltx with config, returns :ok or {:error, error}

to_cypher(value)

Converts a Boltx.Types.Duration to cypher

Examples

iex> AshNeo4j.BoltxHelper.to_cypher(%Boltx.Types.Duration{hours: 1})
iex> "PT1H"

to_elixir_duration(value)

@spec to_elixir_duration(
  %{optional(:days) => integer(), optional(any()) => any()}
  | String.t()
) ::
  Duration.t()

Converts a Boltx.Types.Duration to an Elixir Duration

Examples

iex> AshNeo4j.BoltxHelper.to_elixir_duration(Boltx.Types.Duration.create(14, 25, 18367, 8000))
%Duration{year: 1, month: 2, week: 3, day: 4, hour: 5, minute: 6, second: 7, microsecond: {8, 6}}

iex> AshNeo4j.BoltxHelper.to_elixir_duration(Boltx.Types.Duration.create(1, 0, 0, 0))
%Duration{month: 1}

iex> AshNeo4j.BoltxHelper.to_elixir_duration("PT1H")
%Duration{hour: 1}