summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Scott <sam@osohq.com>2024-04-07 13:45:39 -0500
committerSam Scott <sam@osohq.com>2024-04-07 13:45:50 -0500
commit671266456066aca49e577b871281191d84d01e2e (patch)
tree374402fdeded35613fceb3cde8a3b0e81e4b7475
parenta371dacd9ac4953b7a395a61775a575c1910f62b (diff)
Update README with more info on why (not) to use this
-rw-r--r--README.md8
1 files changed, 5 insertions, 3 deletions
diff --git a/README.md b/README.md
index 5b8917b..f70b28a 100644
--- a/README.md
+++ b/README.md
@@ -13,9 +13,11 @@ querystrings. This crate is designed to extend [`serde_urlencoded`][urlencoded]
when using nested parameters, similar to those used by [qs][qs] for Node, and
commonly used by Ruby on Rails via [Rack][Rack].
-The core of the library was inspired by
-[`serde_urlencoded`][urlencoded], which should be preferred
-over this crate whenever non-nested query parameters are sufficient. It is built
+The core of the library was inspired by [`serde_urlencoded`][urlencoded].
+In order to support abitrarily nested structs encoded in arbitrary orders, we
+perform two passes over the input string. This likely adds a non-trivial amount
+of memory and compute. Due to this `serde_urlencoded` should be preferred
+over this crate whenever non-nested query parameters are sufficient. The crate is built
upon [Serde], a high performance generic serialization framework and [rust-url],
a URL parser for Rust.