pub struct GremlinClient { /* private fields */ }
Implementations§
Source§impl GremlinClient
impl GremlinClient
pub fn close_session(&mut self) -> GremlinResult<GResultSet>
Source§impl GremlinClient
impl GremlinClient
Sourcepub fn connect<T>(options: T) -> GremlinResult<GremlinClient>where
T: Into<ConnectionOptions>,
pub fn connect<T>(options: T) -> GremlinResult<GremlinClient>where
T: Into<ConnectionOptions>,
Examples found in repository?
examples/path.rs (line 4)
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4 let client = GremlinClient::connect("localhost")?;
5
6 let results = client
7 .execute("g.V(param).outE().inV().path()", &[("param", &1)])?
8 .filter_map(Result::ok)
9 .map(|f| f.take::<Path>())
10 .collect::<Result<Vec<Path>, _>>()?;
11
12 println!("{:#?}", results);
13
14 Ok(())
15}
More examples
examples/multithread.rs (line 5)
4fn main() -> Result<(), Box<dyn std::error::Error>> {
5 let client = GremlinClient::connect("localhost")?;
6
7 let c = client.clone();
8
9 let result = thread::spawn(move || {
10 c.execute("g.V(param)", &[("param", &1)])?
11 .filter_map(Result::ok)
12 .map(|f| f.take::<Vertex>())
13 .collect::<Result<Vec<Vertex>, _>>()
14 });
15
16 println!("{:?}", result.join());
17
18 Ok(())
19}
examples/traversal.rs (line 4)
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4 let client = GremlinClient::connect("localhost")?;
5
6 let g = traversal().with_remote(client);
7
8 let vertices = g
9 .v(())
10 .has_label("person")
11 .has(("name", "marko"))
12 .to_list()?;
13
14 println!("{:?}", vertices);
15
16 let friends = g
17 .v(())
18 .has_label("person")
19 .has(("name", "marko"))
20 .out("knows")
21 .to_list()?;
22
23 println!("{:?}", friends);
24
25 Ok(())
26}
examples/vertex.rs (line 4)
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4 let client = GremlinClient::connect("localhost")?;
5
6 let results = client
7 .execute("g.V(param)", &[("param", &1)])?
8 .filter_map(Result::ok)
9 .map(|f| f.take::<Vertex>())
10 .collect::<Result<Vec<Vertex>, _>>()?;
11
12 println!("Vertex count: {}", results.len());
13
14 let vertex = &results[0];
15
16 println!(
17 "Vertex with id: [{}] and label: [{}]",
18 vertex.id().get::<i64>()?,
19 vertex.label()
20 );
21
22 Ok(())
23}
examples/connection_options.rs (lines 4-11)
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4 let client = GremlinClient::connect(
5 ConnectionOptions::builder()
6 .host("localhost")
7 .port(8182)
8 .pool_size(1)
9 .credentials("stephen", "password")
10 .build(),
11 )?;
12
13 let results = client
14 .execute("g.V(param)", &[("param", &1)])?
15 .filter_map(Result::ok)
16 .map(|f| f.take::<Vertex>())
17 .collect::<Result<Vec<Vertex>, _>>()?;
18
19 println!("{:?}", results);
20
21 Ok(())
22}
examples/edge_properties.rs (line 4)
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4 let client = GremlinClient::connect("localhost")?;
5
6 let results = client
7 .execute("g.V(param).outE().properties()", &[("param", &1)])?
8 .filter_map(Result::ok)
9 .map(|f| f.take::<Property>())
10 .collect::<Result<Vec<Property>, _>>()?;
11
12 println!("{:?}", results);
13
14 let results = client
15 .execute("g.V(param).outE().propertyMap()", &[("param", &1)])?
16 .filter_map(Result::ok)
17 .map(|f| f.take::<Map>())
18 .collect::<Result<Vec<Map>, _>>()?;
19
20 println!("{:?}", results);
21
22 Ok(())
23}
Additional examples can be found in:
pub fn create_session(&mut self, name: String) -> GremlinResult<GremlinClient>
Sourcepub fn alias<T>(&self, alias: T) -> GremlinClient
pub fn alias<T>(&self, alias: T) -> GremlinClient
Return a cloned client with the provided alias
Sourcepub fn execute<T>(
&self,
script: T,
params: &[(&str, &dyn ToGValue)],
) -> GremlinResult<GResultSet>
pub fn execute<T>( &self, script: T, params: &[(&str, &dyn ToGValue)], ) -> GremlinResult<GResultSet>
Examples found in repository?
examples/path.rs (line 7)
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4 let client = GremlinClient::connect("localhost")?;
5
6 let results = client
7 .execute("g.V(param).outE().inV().path()", &[("param", &1)])?
8 .filter_map(Result::ok)
9 .map(|f| f.take::<Path>())
10 .collect::<Result<Vec<Path>, _>>()?;
11
12 println!("{:#?}", results);
13
14 Ok(())
15}
More examples
examples/multithread.rs (line 10)
4fn main() -> Result<(), Box<dyn std::error::Error>> {
5 let client = GremlinClient::connect("localhost")?;
6
7 let c = client.clone();
8
9 let result = thread::spawn(move || {
10 c.execute("g.V(param)", &[("param", &1)])?
11 .filter_map(Result::ok)
12 .map(|f| f.take::<Vertex>())
13 .collect::<Result<Vec<Vertex>, _>>()
14 });
15
16 println!("{:?}", result.join());
17
18 Ok(())
19}
examples/vertex.rs (line 7)
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4 let client = GremlinClient::connect("localhost")?;
5
6 let results = client
7 .execute("g.V(param)", &[("param", &1)])?
8 .filter_map(Result::ok)
9 .map(|f| f.take::<Vertex>())
10 .collect::<Result<Vec<Vertex>, _>>()?;
11
12 println!("Vertex count: {}", results.len());
13
14 let vertex = &results[0];
15
16 println!(
17 "Vertex with id: [{}] and label: [{}]",
18 vertex.id().get::<i64>()?,
19 vertex.label()
20 );
21
22 Ok(())
23}
examples/connection_options.rs (line 14)
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4 let client = GremlinClient::connect(
5 ConnectionOptions::builder()
6 .host("localhost")
7 .port(8182)
8 .pool_size(1)
9 .credentials("stephen", "password")
10 .build(),
11 )?;
12
13 let results = client
14 .execute("g.V(param)", &[("param", &1)])?
15 .filter_map(Result::ok)
16 .map(|f| f.take::<Vertex>())
17 .collect::<Result<Vec<Vertex>, _>>()?;
18
19 println!("{:?}", results);
20
21 Ok(())
22}
examples/edge_properties.rs (line 7)
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4 let client = GremlinClient::connect("localhost")?;
5
6 let results = client
7 .execute("g.V(param).outE().properties()", &[("param", &1)])?
8 .filter_map(Result::ok)
9 .map(|f| f.take::<Property>())
10 .collect::<Result<Vec<Property>, _>>()?;
11
12 println!("{:?}", results);
13
14 let results = client
15 .execute("g.V(param).outE().propertyMap()", &[("param", &1)])?
16 .filter_map(Result::ok)
17 .map(|f| f.take::<Map>())
18 .collect::<Result<Vec<Map>, _>>()?;
19
20 println!("{:?}", results);
21
22 Ok(())
23}
examples/edge.rs (line 8)
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4 let client = GremlinClient::connect("localhost")?;
5
6 // Find outgoing edges for V[1]
7 let results = client
8 .execute("g.V(param).outE()", &[("param", &1)])?
9 .filter_map(Result::ok)
10 .map(|f| f.take::<Edge>())
11 .collect::<Result<Vec<Edge>, _>>()?;
12
13 println!("Edges count {}", results.len());
14
15 let first = &results[0];
16
17 println!(
18 "Edge with id: [{}] and label: [{}] from: [{}] to: [{}]",
19 first.id().get::<i32>()?,
20 first.label(),
21 first.out_v().id().get::<i64>()?,
22 first.in_v().id().get::<i64>()?
23 );
24
25 Ok(())
26}
Additional examples can be found in:
pub fn generate_message( &self, bytecode: &Bytecode, ) -> GremlinResult<Message<Value>>
Trait Implementations§
Source§impl Clone for GremlinClient
impl Clone for GremlinClient
Source§fn clone(&self) -> GremlinClient
fn clone(&self) -> GremlinClient
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreAuto Trait Implementations§
impl Freeze for GremlinClient
impl !RefUnwindSafe for GremlinClient
impl Send for GremlinClient
impl Sync for GremlinClient
impl Unpin for GremlinClient
impl !UnwindSafe for GremlinClient
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more