1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
//! Geode Rust Client Library
//!
//! A high-performance async Rust client for Geode graph database with full GQL support.
//! Supports both QUIC and gRPC transports using protobuf wire protocol.
//!
//! # Features
//!
//! - 🚀 Fully async using tokio with type safety
//! - 🔒 QUIC + TLS 1.3 or gRPC for flexible networking
//! - 📝 Full GQL (ISO/IEC 39075:2024) support
//! - 🏗️ Query builders for programmatic query construction
//! - 🔐 Authentication & RBAC with RLS policies
//! - 🏊 Connection pooling for concurrent workloads
//! - 📊 Rich type system with Decimal, temporal types
//!
//! # Transport Options
//!
//! ## QUIC Transport (default)
//!
//! ```no_run
//! use geode_client::{Client, Result};
//!
//! #[tokio::main]
//! async fn main() -> Result<()> {
//! // Connect via QUIC using DSN
//! let client = Client::from_dsn("quic://127.0.0.1:3141?insecure=true")?;
//! let mut conn = client.connect().await?;
//! let (page, _) = conn.query("RETURN 1 AS x").await?;
//! conn.close()?;
//! Ok(())
//! }
//! ```
//!
//! ## gRPC Transport
//!
//! ```no_run
//! use geode_client::{Client, Result};
//!
//! #[tokio::main]
//! async fn main() -> Result<()> {
//! // Connect via gRPC using DSN
//! let client = Client::from_dsn("grpc://127.0.0.1:50051")?;
//! let mut conn = client.connect().await?;
//! let (page, _) = conn.query("RETURN 1 AS x").await?;
//! conn.close()?;
//! Ok(())
//! }
//! ```
//!
//! # DSN Formats
//!
//! - `quic://host:port?options` - QUIC transport (default port: 3141)
//! - `grpc://host:port?options` - gRPC transport
//! - `host:port?options` - Legacy format, defaults to QUIC
// gRPC transport module
// Re-export main types
pub use ;
pub use ;
pub use ;
pub use ;
pub use ConnectionPool;
pub use ;
pub use ;
/// Library version
pub const VERSION: &str = env!;