Struct skytable::Query [−][src]
pub struct Query { /* fields omitted */ }
Expand description
This struct represents a single simple query as defined by the Skyhash protocol
A simple query is serialized into a flat string array which is nothing but a Skyhash serialized equivalent
of an array of String
items. To construct a query like SET x 100
, one needs to:
use skytable::Query; let q = Query::new().arg("set").arg("x").arg("100");
You can now run this with a Connection
or an AsyncConnection
. You can also created queries From
objects that can be turned into actions. For example, these are completely valid constructions:
use skytable::Query; let q1 = Query::from(["mget", "x", "y", "z"]); let q2 = Query::from(vec!["mset", "x", "100", "y", "200", "z", "300"]); let q3 = Query::from("get").arg("x");
Finally, queries can also be created by taking references. For example:
use skytable::Query; let my_keys = vec!["key1", "key2", "key3"]; let mut q = Query::new(); for key in my_keys { q.push(key); }
Implementations
Add an argument to a query returning a Query
. This can be used for queries built using the
builder pattern. If you need to add items, by reference, consider using Query::push
Panics
This method will panic if the passed arg
is empty
Add an argument to a query taking a reference to it
This is useful if you are adding queries in a loop than building it using the builder
pattern (to use the builder-pattern, use Query::arg
)
Panics
This method will panic if the passed arg
is empty
This is supported on crate feature dbg
only.
dbg
only.Get the raw bytes of a query
This is a function that is not intended for daily use but is for developers working to improve/debug or extend the Skyhash protocol. Skytable itself uses this function to generate raw queries. Once you’re done passing the arguments to a query, running this function will return the raw query that would be written to the stream, serialized using the Skyhash serialization protocol
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Query
impl UnwindSafe for Query