Compile-time macros for the ClickHouse DSL.
This module only contains the clickhouse/1 macro (and its private helpers).
It is intentionally kept separate from AshClickhouse.DataLayer.Dsl so that
importing it does not also import the runtime getter functions (such as
table/1). That separation matters: a resource may define a local helper
macro or function named like a DSL key (e.g. table/1) inside a clickhouse
block value, and we must not shadow it with an imported getter.
Summary
Functions
Macro for configuring ClickHouse options in Ash resources.
Functions
Macro for configuring ClickHouse options in Ash resources.
Import this module (and only this module) to use the clickhouse block:
import AshClickhouse.DataLayer.Dsl.Macros
clickhouse do
table "my_table"
repo MyApp.Repo
endThe runtime getters (e.g. AshClickhouse.DataLayer.Dsl.table/1) live in
AshClickhouse.DataLayer.Dsl and are not imported by this module.