3 unstable releases
0.2.1 | Dec 6, 2024 |
---|---|
0.2.0 | Feb 7, 2022 |
0.1.0 | Oct 1, 2020 |
#1652 in Procedural macros
654 downloads per month
Used in 3 crates
(2 directly)
9KB
141 lines
Prusto
A presto/trino client library written in rust.
Installation
# Cargo.toml
[dependencies]
prusto = "0.5"
In order to use this crate as presto client, enable "presto" feature.
# Cargo.toml
[dependencies]
prusto = { version = "0.5", features = ["presto"] }
Example
use prusto::{ClientBuilder, Presto};
#[derive(Presto, Debug)]
struct Foo {
a: i64,
b: f64,
c: String,
}
#[tokio::main]
async fn main() {
let cli = ClientBuilder::new("user", "localhost")
.port(8090)
.catalog("catalog")
.build()
.unwrap();
let sql = "select 1 as a, cast(1.1 as double) as b, 'bar' as c ";
let data = cli.get_all::<Foo>(sql.into()).await.unwrap().into_vec();
for r in data {
println!("{:?}", r)
}
}
License
MIT
Dependencies
~1.5MB
~38K SLoC