sparkling/format/registry
Types
Format handler for a specific ClickHouse format. encode: List(Dict) → serialized string decode: serialized string → List(Dict)
pub type FormatHandler {
FormatHandler(
name: String,
encode: fn(List(dict.Dict(String, json.Json))) -> Result(
String,
String,
),
decode: fn(String) -> Result(
List(dict.Dict(String, json.Json)),
String,
),
)
}
Constructors
Registry of format handlers (opaque).
pub opaque type FormatRegistry
Values
pub fn decode(
registry: FormatRegistry,
format_name: String,
data: String,
) -> Result(List(dict.Dict(String, json.Json)), String)
Decode data using the specified format handler.
pub fn encode(
registry: FormatRegistry,
format_name: String,
data: List(dict.Dict(String, json.Json)),
) -> Result(String, String)
Encode data using the specified format handler.
pub fn get_handler(
registry: FormatRegistry,
format_name: String,
) -> Result(FormatHandler, String)
Get a format handler by name. Returns an error string if not found.
pub fn list_formats(registry: FormatRegistry) -> List(String)
List all registered format names.
pub fn register(
registry: FormatRegistry,
handler: FormatHandler,
) -> FormatRegistry
Register a format handler. Overwrites any existing handler with the same name.