Current section

Files

Jump to
caffeine_lang src caffeine_query_language@ast.erl
Raw

src/caffeine_query_language@ast.erl

-module(caffeine_query_language@ast).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/caffeine_query_language/ast.gleam").
-export_type([cql_parsed/0, substituted/0, operator/0, comparator/0, time_slice_exp/0, exp/1, primary/1, word/0]).
-type cql_parsed() :: any().
-type substituted() :: any().
-type operator() :: add | sub | mul | 'div'.
-type comparator() :: less_than |
less_than_or_equal_to |
greater_than |
greater_than_or_equal_to.
-type time_slice_exp() :: {time_slice_exp,
binary(),
comparator(),
float(),
float()}.
-type exp(IBV) :: {time_slice_expr, time_slice_exp()} |
{operator_expr, exp(IBV), exp(IBV), operator()} |
{primary, primary(IBV)}.
-type primary(IBW) :: {primary_word, word()} | {primary_exp, exp(IBW)}.
-type word() :: {word, binary()}.