[−][src]Crate gremlin_client
Experimental Rust client for Apache Tinkerpop Gremlin Server. The driver supports only the execution of raw Gremlin queries
You can use gremlin-client this lines in your Cargo.toml
[dependencies]
gremlin-client = "*"
Here it is an usage example:
use gremlin_client::{GremlinClient, Vertex};
fn main() -> Result<(), Box<std::error::Error>> {
let client = GremlinClient::connect("localhost")?;
let results = client
.execute("g.V(param)", &[("param", &1)])?
.filter_map(Result::ok)
.map(|f| f.take::<Vertex>())
.collect::<Result<Vec<Vertex>, _>>()?;
println!("{:?}", results);
Ok(())
}
Here it is an example with traversal:
use gremlin_client::{GremlinClient, Vertex, process::traversal::traversal};
fn main() -> Result<(), Box<std::error::Error>> {
let client = GremlinClient::connect("localhost")?;
let g = traversal().with_remote(client);
let results = g.v(()).has_label("person").has(("name","Jon")).to_list()?;
println!("{:?}", results);
Ok(())
}
Modules
| process | |
| structure | |
| utils |
Structs
| ConnectionOptions | |
| Edge | |
| GResultSet | |
| GremlinClient | |
| IntermediateRepr | |
| List | |
| Map | Represent a Map<GKey,GValue> which has ability to allow for non-String keys. TinkerPop type here |
| Metric | |
| Path | |
| Property | |
| TlsOptions | |
| Token | |
| TraversalExplanation | |
| TraversalMetrics | |
| Vertex | |
| VertexProperty |
Enums
| GID | |
| GKey | Possible key types in a Map |
| GValue | Represent possible values coming from the Gremlin Server |
| GremlinError |
Traits
| ToGValue |
Type Definitions
| GremlinResult |