1extern crate sled_web;
2extern crate serde_json;
3
4use sled_web::hyper;
5use sled_web::hyper::rt::{Future, Stream};
6
7fn main() {
8 let client = sled_web::Client::new("http://localhost:3000".parse().unwrap());
9
10 let get_a = client
11 .get(vec![6])
12 .map(|v| {
13 println!("Entry `6` was `None`, as expected");
14 assert!(v.is_none())
15 })
16 .map_err(|e| eprintln!("{}", e));
17
18 let set = client
19 .set(vec![6], vec![1, 2, 3, 4, 5, 6, 7, 8, 9])
20 .map(|_| println!("Entry `6` successfully set"))
21 .map_err(|e| eprintln!("{}", e));
22
23 let get_b = client
24 .get(vec![6])
25 .map(|v| {
26 assert!(v.is_some());
27 println!("Successfully retrieved `6`: {:?}", v)
28 })
29 .map_err(|e| eprintln!("{}", e));
30
31 let iter = client
32 .iter()
33 .map(|(k, v)| println!(" ({:?}, {:?})", k, v))
34 .map_err(|e| eprintln!("Error: {}", e))
35 .collect()
36 .map(|_| ())
37 .map_err(|_| ());
38
39 let scan = client
40 .scan(vec![3])
41 .map(|(k, v)| println!(" ({:?}, {:?})", k, v))
42 .map_err(|e| eprintln!("Error: {}", e))
43 .collect()
44 .map(|_| ())
45 .map_err(|_| ());
46
47 let scan_range = client
48 .scan_range(vec![2], vec![5])
49 .map(|(k, v)| println!(" ({:?}, {:?})", k, v))
50 .map_err(|e| eprintln!("Error: {}", e))
51 .collect()
52 .map(|_| ())
53 .map_err(|_| ());
54
55 let max = client
56 .max()
57 .map(|entry| println!("Max: {:?}", entry))
58 .map_err(|e| eprintln!("Error: {}", e));
59
60 let pred = client
61 .pred(vec![4])
62 .map(|entry| println!("Pred to [4]: {:?}", entry))
63 .map_err(|e| eprintln!("Error: {}", e));
64
65 let pred_incl = client
66 .pred_incl(vec![4])
67 .map(|entry| println!("PredIncl to [4]: {:?}", entry))
68 .map_err(|e| eprintln!("Error: {}", e));
69
70 let succ = client
71 .succ(vec![2])
72 .map(|entry| println!("Succ to [2]: {:?}", entry))
73 .map_err(|e| eprintln!("Error: {}", e));
74
75 let succ_incl = client
76 .succ_incl(vec![2])
77 .map(|entry| println!("SuccIncl to [2]: {:?}", entry))
78 .map_err(|e| eprintln!("Error: {}", e));
79
80 hyper::rt::run({
81 get_a
82 .then(|_| set)
83 .then(|_| get_b)
84 .then(|_| {
85 println!("Iter all elements...");
86 iter
87 })
88 .then(|_| {
89 println!("Scan elements starting from `vec![3]`");
90 scan
91 })
92 .then(|_| {
93 println!("Scan range elements starting from `vec![2]` to `vec![5]`");
94 scan_range
95 })
96 .then(|_| max)
97 .then(|_| pred)
98 .then(|_| pred_incl)
99 .then(|_| succ)
100 .then(|_| succ_incl)
101 });
102}