ExScylla. Types
(ex_scylla v0.10.2)
Copy Markdown
This module defines the core type hierarchy and aliases used throughout the ExScylla library.
It provides Elixir type specs that map to the underlying Rust Scylla driver types.
Summary
Types
@opaque batch()
@type batch_type() :: :logged | :unlogged | :counter
@type cluster_state() :: ExScylla.Types.ClusterState.t()
@type column_type() :: {:custom, String.t()} | :ascii | :boolean | :blob | :counter | :date | :decimal | :double | :duration | :float | :int | :big_int | :text | :timestamp | :inet | {:list, column_type()} | {:map, {column_type(), column_type()}} | {:set, column_type()} | {:user_defined_type, ExScylla.Types.UserDefinedColumnType.t()} | :small_int | :tiny_int | :time | :timeuuid | {:tuple, [column_type()]} | :uuid | :varint
@type consistency() ::
:any
| :one
| :two
| :three
| :quorum
| :all
| :local_quorum
| :each_quorum
| :local_one
@opaque default_policy_builder()
@type duration_ms() :: non_neg_integer()
@opaque execution_profile()
@opaque execution_profile_builder()
@opaque execution_profile_handle()
@opaque latency_awareness_builder()
@type load_balancing_policy() :: load_balancing_policy_resource()
@opaque load_balancing_policy_resource()
@type metrics() :: ExScylla.Types.Metrics.t()
@type msg() :: String.t()
@type paging_state() :: binary()
@type parse_error() :: {:error, {:parse_value, msg()}}
@type pool_size() :: {:per_host, pos_integer()} | {:per_shard, pos_integer()}
@opaque prepared_statement()
@opaque query()
@type retry_policy() :: :default_retry_policy | :fall_through_retry_policy
@type serial_consistency() :: :serial | :local_serial
@opaque session()
@opaque session_builder()
@type speculative_execution_policy() :: ExScylla.Types.SimpleSpeculativeExecutionPolicy.t() | ExScylla.Types.PercentileSpeculativeExecutionPolicy.t()
@type tracing_info() :: ExScylla.Types.TracingInfo.t()
@type transport_compression() :: :lz4 | :snappy
@type ts_micros() :: integer()
@type uuid() :: binary()
@type value() :: {:ascii, String.t()} | {:boolean, boolean()} | {:blob, binary()} | {:counter, integer()} | {:decimal, String.t()} | {:date, non_neg_integer()} | {:double, float()} | {:duration, ExScylla.Types.CqlDuration.t()} | :empty | {:float, float()} | {:int, integer()} | {:big_int, integer()} | {:text, String.t()} | {:timestamp, integer()} | {:inet, :inet.ip_address()} | {:list, [value()]} | {:map, [{value(), value()}]} | {:set, [value()]} | {:user_defined_type, ExScylla.Types.UserDefinedType.t()} | {:small_int, integer()} | {:tiny_int, integer()} | {:time, integer()} | {:timeuuid, binary()} | {:tuple, [value() | nil]} | {:uuid, binary()} | {:varint, String.t()}
@type values() :: [value()]