Crates.io | sql-functions |
lib.rs | sql-functions |
version | 0.1.3 |
source | src |
created_at | 2024-06-01 18:35:57.048783 |
updated_at | 2024-06-02 22:43:34.645375 |
description | A library of dialect specific SQL Functions |
homepage | |
repository | https://github.com/sdf-labs/sql-functions |
max_upload_size | |
id | 1258815 |
size | 914,401 |
This crate contains generated function stubs and implementations for SQL functions from various SQL dialects. The goal is to enable compute providers like DataFusion to selectively import functions from many dialects.
The goal: functional parity between this crate and all functions in all SQL dialects.
To contribute a function, please see our contribution guidelines
This crate is split up into the following compontents:
.sdf.yml
format. These signatures are then used by the generator to generate a function stub. Each function stub has a todo!()
which must be filled in.All functions are compiled into a single crate.
To build the functions crate:
cargo build
To test the functions crate:
cargo test
The functions in this crate are monomorphic by default. This means that each function operates on a single type of data, and support for multiple data types results in an overloaded function. For example, a function that takes an integer and returns an integer, like int add(int a, int b), is monomorphic.
This is in contrast to polymorphic functions, which can operate on multiple types through mechanisms such as generics or type parameters. Monomorphic functions are typically simpler in terms of type checking and type inference, as there are no generic type parameters to resolve.
Contributions are more than welcome! Both to the list of reports, or documentation. Please carefully read CONTRIBUTING.md