";var infos=["Prefix searches with a type followed by a colon (e.g., fn:) to \
+ restrict the search to a given item kind.","Accepted kinds are: fn, mod, struct, \
enum, trait, type, macro, \
and const.","Search functions by type signature (e.g., vec -> usize or \
* -> vec)","Search multiple things at once by splitting your query with comma (e.g., \
str,u8 or String,struct:Vec,test)","You can look for items with an exact name by putting double quotes around \
- your request: \"string\"","Look for items inside another one by searching for a path: vec::Vec",].map(x=>"
"+infos;container.appendChild(div_shortcuts);container.appendChild(div_infos);popup.appendChild(container);insertAfter(popup,getSearchElement())}onHashChange(null);window.onhashchange=onHashChange;buildHelperPopup()}());window.onunload=function(){}
\ No newline at end of file
+ your request: \"string\"","Look for items inside another one by searching for a path: vec::Vec",].map(x=>"
"+infos;container.appendChild(book_info);container.appendChild(div_shortcuts);container.appendChild(div_infos);popup.appendChild(container);insertAfter(popup,getSearchElement());buildHelperPopup=function(){}}onHashChange(null);window.onhashchange=onHashChange}());window.onunload=function(){}
\ No newline at end of file
diff --git a/normalize.css b/normalize.css
index 45b6cb26..6d692b50 100644
--- a/normalize.css
+++ b/normalize.css
@@ -1,2 +1,2 @@
-/*! normalize.css v3.0.0 | MIT License | git.io/normalize */
+ /*! normalize.css v3.0.0 | MIT License | git.io/normalize */
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}
\ No newline at end of file
diff --git a/noscript.css b/noscript.css
index 351b41cf..5cbcb901 100644
--- a/noscript.css
+++ b/noscript.css
@@ -1 +1 @@
-#main>h2+div,#main>h2+h3,#main>h3+div{display:block;}.loading-content{display:none;}#main>h2+div,#main>h3+div{display:block;}#main>h2+h3{display:flex;}
\ No newline at end of file
+ #main>h2+div,#main>h2+h3,#main>h3+div{display:block;}.loading-content{display:none;}#main>h2+div,#main>h3+div{display:block;}#main>h2+h3{display:flex;}#main .impl-items .hidden{display:block !important;}
\ No newline at end of file
diff --git a/proxy_wasm_experimental/all.html b/proxy_wasm_experimental/all.html
index 4c7fa394..0220b2a5 100644
--- a/proxy_wasm_experimental/all.html
+++ b/proxy_wasm_experimental/all.html
@@ -1,3 +1,6 @@
-List of all items in this crate
\ No newline at end of file
diff --git a/proxy_wasm_experimental/error/index.html b/proxy_wasm_experimental/error/index.html
index d8ccba2c..5d0a151e 100644
--- a/proxy_wasm_experimental/error/index.html
+++ b/proxy_wasm_experimental/error/index.html
@@ -1,7 +1,10 @@
-proxy_wasm_experimental::error - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/error/sidebar-items.js b/proxy_wasm_experimental/error/sidebar-items.js
index 276d166a..b444d878 100644
--- a/proxy_wasm_experimental/error/sidebar-items.js
+++ b/proxy_wasm_experimental/error/sidebar-items.js
@@ -1 +1 @@
-initSidebarItems({"struct":[["HostCallError","An error to call a Host ABI function."],["HostResponseError","An error to parse the response from a Host ABI."]],"type":[["Error","A boxed [`Error`]."],["Result","A specialized [`Result`] type."]]});
\ No newline at end of file
+initSidebarItems({"struct":[["HostCallError","An error to call a Host ABI function."],["HostResponseError","An error to parse the response from a Host ABI."]],"type":[["Error","A boxed `Error`."],["Result","A specialized `Result` type."]]});
\ No newline at end of file
diff --git a/proxy_wasm_experimental/error/struct.HostCallError.html b/proxy_wasm_experimental/error/struct.HostCallError.html
index 868f5453..f71fd66d 100644
--- a/proxy_wasm_experimental/error/struct.HostCallError.html
+++ b/proxy_wasm_experimental/error/struct.HostCallError.html
@@ -1,19 +1,21 @@
-proxy_wasm_experimental::error::HostCallError - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/error/struct.HostResponseError.html b/proxy_wasm_experimental/error/struct.HostResponseError.html
index b01dbdaf..ff12d216 100644
--- a/proxy_wasm_experimental/error/struct.HostResponseError.html
+++ b/proxy_wasm_experimental/error/struct.HostResponseError.html
@@ -1,19 +1,21 @@
-proxy_wasm_experimental::error::HostResponseError - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/error/type.Error.html b/proxy_wasm_experimental/error/type.Error.html
index 695382f2..9b1bad9c 100644
--- a/proxy_wasm_experimental/error/type.Error.html
+++ b/proxy_wasm_experimental/error/type.Error.html
@@ -1,2 +1,5 @@
-proxy_wasm_experimental::error::Error - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/error/type.Result.html b/proxy_wasm_experimental/error/type.Result.html
index 5531fa69..44879cd6 100644
--- a/proxy_wasm_experimental/error/type.Result.html
+++ b/proxy_wasm_experimental/error/type.Result.html
@@ -1,2 +1,5 @@
-proxy_wasm_experimental::error::Result - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/fn.proxy_abi_version_0_2_0.html b/proxy_wasm_experimental/fn.proxy_abi_version_0_2_0.html
new file mode 100644
index 00000000..a5acccd0
--- /dev/null
+++ b/proxy_wasm_experimental/fn.proxy_abi_version_0_2_0.html
@@ -0,0 +1,4 @@
+proxy_wasm_experimental::proxy_abi_version_0_2_0 - Rust
+
+
\ No newline at end of file
diff --git a/proxy_wasm_experimental/fn.set_http_context.html b/proxy_wasm_experimental/fn.set_http_context.html
index f7339eaa..560115f3 100644
--- a/proxy_wasm_experimental/fn.set_http_context.html
+++ b/proxy_wasm_experimental/fn.set_http_context.html
@@ -1 +1,4 @@
-proxy_wasm_experimental::set_http_context - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/fn.set_log_level.html b/proxy_wasm_experimental/fn.set_log_level.html
index 2154e50f..2deb7e41 100644
--- a/proxy_wasm_experimental/fn.set_log_level.html
+++ b/proxy_wasm_experimental/fn.set_log_level.html
@@ -1 +1,4 @@
-proxy_wasm_experimental::set_log_level - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/fn.set_root_context.html b/proxy_wasm_experimental/fn.set_root_context.html
index 6edeaee5..d39a09bd 100644
--- a/proxy_wasm_experimental/fn.set_root_context.html
+++ b/proxy_wasm_experimental/fn.set_root_context.html
@@ -1 +1,4 @@
-proxy_wasm_experimental::set_root_context - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/fn.set_stream_context.html b/proxy_wasm_experimental/fn.set_stream_context.html
index 52953a7d..ea576a9b 100644
--- a/proxy_wasm_experimental/fn.set_stream_context.html
+++ b/proxy_wasm_experimental/fn.set_stream_context.html
@@ -1 +1,4 @@
-proxy_wasm_experimental::set_stream_context - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/constant.NO_BODY.html b/proxy_wasm_experimental/hostcalls/constant.NO_BODY.html
index 26a0ef4c..ca8af9a1 100644
--- a/proxy_wasm_experimental/hostcalls/constant.NO_BODY.html
+++ b/proxy_wasm_experimental/hostcalls/constant.NO_BODY.html
@@ -1,2 +1,5 @@
-proxy_wasm_experimental::hostcalls::NO_BODY - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/constant.NO_HEADERS.html b/proxy_wasm_experimental/hostcalls/constant.NO_HEADERS.html
index 717a7918..f70807ed 100644
--- a/proxy_wasm_experimental/hostcalls/constant.NO_HEADERS.html
+++ b/proxy_wasm_experimental/hostcalls/constant.NO_HEADERS.html
@@ -1,2 +1,5 @@
-proxy_wasm_experimental::hostcalls::NO_HEADERS - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/constant.NO_TRAILERS.html b/proxy_wasm_experimental/hostcalls/constant.NO_TRAILERS.html
index ae10b54b..63ced9e7 100644
--- a/proxy_wasm_experimental/hostcalls/constant.NO_TRAILERS.html
+++ b/proxy_wasm_experimental/hostcalls/constant.NO_TRAILERS.html
@@ -1,2 +1,5 @@
-proxy_wasm_experimental::hostcalls::NO_TRAILERS - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.add_map_value.html b/proxy_wasm_experimental/hostcalls/fn.add_map_value.html
index de7e7427..033f382e 100644
--- a/proxy_wasm_experimental/hostcalls/fn.add_map_value.html
+++ b/proxy_wasm_experimental/hostcalls/fn.add_map_value.html
@@ -1,4 +1,7 @@
-proxy_wasm_experimental::hostcalls::add_map_value - Rust
Terminates processing of a given stream, i.e. HTTP request or HTTP response.
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.continue_stream.html b/proxy_wasm_experimental/hostcalls/fn.continue_stream.html
index 1b8286c9..39597a10 100644
--- a/proxy_wasm_experimental/hostcalls/fn.continue_stream.html
+++ b/proxy_wasm_experimental/hostcalls/fn.continue_stream.html
@@ -1,2 +1,5 @@
-proxy_wasm_experimental::hostcalls::continue_stream - Rust
Resumes processing of a given stream, i.e. HTTP request or HTTP response.
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.define_metric.html b/proxy_wasm_experimental/hostcalls/fn.define_metric.html
new file mode 100644
index 00000000..7856e522
--- /dev/null
+++ b/proxy_wasm_experimental/hostcalls/fn.define_metric.html
@@ -0,0 +1,4 @@
+proxy_wasm_experimental::hostcalls::define_metric - Rust
+
+
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.dequeue_shared_queue.html b/proxy_wasm_experimental/hostcalls/fn.dequeue_shared_queue.html
index 3e97ed5f..0e68c1a9 100644
--- a/proxy_wasm_experimental/hostcalls/fn.dequeue_shared_queue.html
+++ b/proxy_wasm_experimental/hostcalls/fn.dequeue_shared_queue.html
@@ -1,2 +1,5 @@
-proxy_wasm_experimental::hostcalls::dequeue_shared_queue - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.dispatch_http_call.html b/proxy_wasm_experimental/hostcalls/fn.dispatch_http_call.html
index 11fa31e1..453dc982 100644
--- a/proxy_wasm_experimental/hostcalls/fn.dispatch_http_call.html
+++ b/proxy_wasm_experimental/hostcalls/fn.dispatch_http_call.html
@@ -1,4 +1,7 @@
-proxy_wasm_experimental::hostcalls::dispatch_http_call - Rust
Indicates to the host environment that Wasm VM side is done processing current context.
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.enqueue_shared_queue.html b/proxy_wasm_experimental/hostcalls/fn.enqueue_shared_queue.html
index 3a8109ba..d951028c 100644
--- a/proxy_wasm_experimental/hostcalls/fn.enqueue_shared_queue.html
+++ b/proxy_wasm_experimental/hostcalls/fn.enqueue_shared_queue.html
@@ -1,4 +1,7 @@
-proxy_wasm_experimental::hostcalls::enqueue_shared_queue - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.get_current_time.html b/proxy_wasm_experimental/hostcalls/fn.get_current_time.html
index ee0748e6..ac4e961c 100644
--- a/proxy_wasm_experimental/hostcalls/fn.get_current_time.html
+++ b/proxy_wasm_experimental/hostcalls/fn.get_current_time.html
@@ -1,2 +1,5 @@
-proxy_wasm_experimental::hostcalls::get_current_time - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.get_map.html b/proxy_wasm_experimental/hostcalls/fn.get_map.html
index 8ecdc6d0..6b1a9769 100644
--- a/proxy_wasm_experimental/hostcalls/fn.get_map.html
+++ b/proxy_wasm_experimental/hostcalls/fn.get_map.html
@@ -1,2 +1,5 @@
-proxy_wasm_experimental::hostcalls::get_map - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.get_map_value.html b/proxy_wasm_experimental/hostcalls/fn.get_map_value.html
index c59bdcb4..f6e38b45 100644
--- a/proxy_wasm_experimental/hostcalls/fn.get_map_value.html
+++ b/proxy_wasm_experimental/hostcalls/fn.get_map_value.html
@@ -1,4 +1,7 @@
-proxy_wasm_experimental::hostcalls::get_map_value - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.get_property.html b/proxy_wasm_experimental/hostcalls/fn.get_property.html
index 9ab6d455..1b8ca614 100644
--- a/proxy_wasm_experimental/hostcalls/fn.get_property.html
+++ b/proxy_wasm_experimental/hostcalls/fn.get_property.html
@@ -1,4 +1,7 @@
-proxy_wasm_experimental::hostcalls::get_property - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.log.html b/proxy_wasm_experimental/hostcalls/fn.log.html
index b803102f..47213296 100644
--- a/proxy_wasm_experimental/hostcalls/fn.log.html
+++ b/proxy_wasm_experimental/hostcalls/fn.log.html
@@ -1,2 +1,5 @@
-proxy_wasm_experimental::hostcalls::log - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.record_metric.html b/proxy_wasm_experimental/hostcalls/fn.record_metric.html
new file mode 100644
index 00000000..772badfc
--- /dev/null
+++ b/proxy_wasm_experimental/hostcalls/fn.record_metric.html
@@ -0,0 +1,4 @@
+proxy_wasm_experimental::hostcalls::record_metric - Rust
+
+
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.register_shared_queue.html b/proxy_wasm_experimental/hostcalls/fn.register_shared_queue.html
index d41d7c34..c4826a58 100644
--- a/proxy_wasm_experimental/hostcalls/fn.register_shared_queue.html
+++ b/proxy_wasm_experimental/hostcalls/fn.register_shared_queue.html
@@ -1,2 +1,5 @@
-proxy_wasm_experimental::hostcalls::register_shared_queue - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.resolve_shared_queue.html b/proxy_wasm_experimental/hostcalls/fn.resolve_shared_queue.html
index 39e6aebd..d7b5f68b 100644
--- a/proxy_wasm_experimental/hostcalls/fn.resolve_shared_queue.html
+++ b/proxy_wasm_experimental/hostcalls/fn.resolve_shared_queue.html
@@ -1,2 +1,5 @@
-proxy_wasm_experimental::hostcalls::resolve_shared_queue - Rust
Looks up for an existing shared queue with a given name.
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.send_http_response.html b/proxy_wasm_experimental/hostcalls/fn.send_http_response.html
index e54c3e83..972a430d 100644
--- a/proxy_wasm_experimental/hostcalls/fn.send_http_response.html
+++ b/proxy_wasm_experimental/hostcalls/fn.send_http_response.html
@@ -1,4 +1,7 @@
-proxy_wasm_experimental::hostcalls::send_http_response - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/fn.set_map.html b/proxy_wasm_experimental/hostcalls/fn.set_map.html
index 133fe0de..93e88bcf 100644
--- a/proxy_wasm_experimental/hostcalls/fn.set_map.html
+++ b/proxy_wasm_experimental/hostcalls/fn.set_map.html
@@ -1,4 +1,7 @@
-proxy_wasm_experimental::hostcalls::set_map - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/index.html b/proxy_wasm_experimental/hostcalls/index.html
index 3a4c3dd9..d0d4a3c0 100644
--- a/proxy_wasm_experimental/hostcalls/index.html
+++ b/proxy_wasm_experimental/hostcalls/index.html
@@ -1,30 +1,33 @@
-proxy_wasm_experimental::hostcalls - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/hostcalls/sidebar-items.js b/proxy_wasm_experimental/hostcalls/sidebar-items.js
index 8a2fe717..442fc71a 100644
--- a/proxy_wasm_experimental/hostcalls/sidebar-items.js
+++ b/proxy_wasm_experimental/hostcalls/sidebar-items.js
@@ -1 +1 @@
-initSidebarItems({"constant":[["NO_BODY","Represents empty body."],["NO_HEADERS","Represents empty headers map."],["NO_TRAILERS","Represents empty trailers map."]],"fn":[["add_map_value","Adds a key-value pair to a given map."],["close_stream","Terminates processing of a given stream, i.e. HTTP request or HTTP response."],["continue_stream","Resumes processing of a given stream, i.e. HTTP request or HTTP response."],["dequeue_shared_queue","Returns data from the end of a given queue."],["dispatch_http_call","Dispatches an HTTP call to a given upstream."],["done","Indicates to the host environment that Wasm VM side is done processing current context."],["enqueue_shared_queue","Adds a value to the front of a given queue."],["get_buffer","Returns content from a given buffer."],["get_current_time","Returns current system time."],["get_map","Returns all key-value pairs from a given map."],["get_map_value","Returns value of a given key from a given map."],["get_property","Returns value of a property in the current context."],["get_shared_data","Returns shared data by key."],["log","Logs a message at a given log level."],["register_shared_queue","Registers a shared queue with a given name."],["resolve_shared_queue","Looks up for an existing shared queue with a given name."],["send_http_response","Sends HTTP response without forwarding request to the upstream."],["set_buffer","Mutates content in a given buffer."],["set_effective_context","Changes the effective context."],["set_map","Sets all key-value pairs in a given map."],["set_map_value","Sets / replaces / removes value of given key from a given map."],["set_property","Sets property to a given value in the current context."],["set_shared_data","Sets shared data by key."],["set_tick_period","Sets the timer to a given period."]]});
\ No newline at end of file
+initSidebarItems({"constant":[["NO_BODY","Represents empty body."],["NO_HEADERS","Represents empty headers map."],["NO_TRAILERS","Represents empty trailers map."]],"fn":[["add_map_value","Adds a key-value pair to a given map."],["close_stream","Terminates processing of a given stream, i.e. HTTP request or HTTP response."],["continue_stream","Resumes processing of a given stream, i.e. HTTP request or HTTP response."],["define_metric",""],["dequeue_shared_queue","Returns data from the end of a given queue."],["dispatch_http_call","Dispatches an HTTP call to a given upstream."],["done","Indicates to the host environment that Wasm VM side is done processing current context."],["enqueue_shared_queue","Adds a value to the front of a given queue."],["get_buffer","Returns content from a given buffer."],["get_current_time","Returns current system time."],["get_map","Returns all key-value pairs from a given map."],["get_map_value","Returns value of a given key from a given map."],["get_metric",""],["get_property","Returns value of a property in the current context."],["get_shared_data","Returns shared data by key."],["increment_metric",""],["log","Logs a message at a given log level."],["record_metric",""],["register_shared_queue","Registers a shared queue with a given name."],["resolve_shared_queue","Looks up for an existing shared queue with a given name."],["send_http_response","Sends HTTP response without forwarding request to the upstream."],["set_buffer","Mutates content in a given buffer."],["set_effective_context","Changes the effective context."],["set_map","Sets all key-value pairs in a given map."],["set_map_value","Sets / replaces / removes value of given key from a given map."],["set_property","Sets property to a given value in the current context."],["set_shared_data","Sets shared data by key."],["set_tick_period","Sets the timer to a given period."]]});
\ No newline at end of file
diff --git a/proxy_wasm_experimental/index.html b/proxy_wasm_experimental/index.html
index b7a7b47c..f78cf4ba 100644
--- a/proxy_wasm_experimental/index.html
+++ b/proxy_wasm_experimental/index.html
@@ -1,3 +1,6 @@
-proxy_wasm_experimental - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/sidebar-items.js b/proxy_wasm_experimental/sidebar-items.js
index 99310bb8..4d76aeff 100644
--- a/proxy_wasm_experimental/sidebar-items.js
+++ b/proxy_wasm_experimental/sidebar-items.js
@@ -1 +1 @@
-initSidebarItems({"fn":[["proxy_abi_version_0_1_0",""],["set_http_context",""],["set_log_level",""],["set_root_context",""],["set_stream_context",""]],"mod":[["error",""],["hostcalls",""],["traits",""],["types",""]]});
\ No newline at end of file
+initSidebarItems({"fn":[["proxy_abi_version_0_2_0",""],["set_http_context",""],["set_log_level",""],["set_root_context",""],["set_stream_context",""]],"mod":[["error",""],["hostcalls",""],["traits",""],["types",""]]});
\ No newline at end of file
diff --git a/proxy_wasm_experimental/traits/enum.ChildContext.html b/proxy_wasm_experimental/traits/enum.ChildContext.html
deleted file mode 100644
index 5dfac0d3..00000000
--- a/proxy_wasm_experimental/traits/enum.ChildContext.html
+++ /dev/null
@@ -1,16 +0,0 @@
-proxy_wasm_experimental::traits::ChildContext - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/traits/index.html b/proxy_wasm_experimental/traits/index.html
index 2ad2eab4..8be29c04 100644
--- a/proxy_wasm_experimental/traits/index.html
+++ b/proxy_wasm_experimental/traits/index.html
@@ -1,4 +1,5 @@
-proxy_wasm_experimental::traits - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/traits/sidebar-items.js b/proxy_wasm_experimental/traits/sidebar-items.js
index 4eb110d4..3f629015 100644
--- a/proxy_wasm_experimental/traits/sidebar-items.js
+++ b/proxy_wasm_experimental/traits/sidebar-items.js
@@ -1 +1 @@
-initSidebarItems({"enum":[["ChildContext","Represents a child context of the root context."]],"trait":[["Context",""],["HttpContext",""],["RootContext",""],["StreamContext",""]]});
\ No newline at end of file
+initSidebarItems({"trait":[["Context",""],["HttpContext",""],["RootContext",""],["StreamContext",""]]});
\ No newline at end of file
diff --git a/proxy_wasm_experimental/traits/trait.Context.html b/proxy_wasm_experimental/traits/trait.Context.html
index ef5bf906..4cfb031b 100644
--- a/proxy_wasm_experimental/traits/trait.Context.html
+++ b/proxy_wasm_experimental/traits/trait.Context.html
@@ -1,20 +1,21 @@
-proxy_wasm_experimental::traits::Context - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/types/enum.BufferType.html b/proxy_wasm_experimental/types/enum.BufferType.html
index 81bc66d8..424ac485 100644
--- a/proxy_wasm_experimental/types/enum.BufferType.html
+++ b/proxy_wasm_experimental/types/enum.BufferType.html
@@ -1,4 +1,7 @@
-proxy_wasm_experimental::types::BufferType - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/types/enum.ContextType.html b/proxy_wasm_experimental/types/enum.ContextType.html
new file mode 100644
index 00000000..1653e3fc
--- /dev/null
+++ b/proxy_wasm_experimental/types/enum.ContextType.html
@@ -0,0 +1,30 @@
+proxy_wasm_experimental::types::ContextType - Rust
+
+
\ No newline at end of file
diff --git a/proxy_wasm_experimental/types/enum.LogLevel.html b/proxy_wasm_experimental/types/enum.LogLevel.html
index dc488a98..e725b4c2 100644
--- a/proxy_wasm_experimental/types/enum.LogLevel.html
+++ b/proxy_wasm_experimental/types/enum.LogLevel.html
@@ -1,30 +1,34 @@
-proxy_wasm_experimental::types::LogLevel - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/types/enum.MapType.html b/proxy_wasm_experimental/types/enum.MapType.html
index 545d3a62..81185bf8 100644
--- a/proxy_wasm_experimental/types/enum.MapType.html
+++ b/proxy_wasm_experimental/types/enum.MapType.html
@@ -1,4 +1,7 @@
-proxy_wasm_experimental::types::MapType - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/types/enum.MetricType.html b/proxy_wasm_experimental/types/enum.MetricType.html
new file mode 100644
index 00000000..60b10545
--- /dev/null
+++ b/proxy_wasm_experimental/types/enum.MetricType.html
@@ -0,0 +1,31 @@
+proxy_wasm_experimental::types::MetricType - Rust
+
+
\ No newline at end of file
diff --git a/proxy_wasm_experimental/types/enum.PeerType.html b/proxy_wasm_experimental/types/enum.PeerType.html
index b6bfe6c1..27cafa72 100644
--- a/proxy_wasm_experimental/types/enum.PeerType.html
+++ b/proxy_wasm_experimental/types/enum.PeerType.html
@@ -1,27 +1,31 @@
-proxy_wasm_experimental::types::PeerType - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/types/enum.Status.html b/proxy_wasm_experimental/types/enum.Status.html
index 7ef7e32e..0cb28f7b 100644
--- a/proxy_wasm_experimental/types/enum.Status.html
+++ b/proxy_wasm_experimental/types/enum.Status.html
@@ -1,30 +1,34 @@
-proxy_wasm_experimental::types::Status - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/types/enum.StreamType.html b/proxy_wasm_experimental/types/enum.StreamType.html
index c85323a0..a63db91c 100644
--- a/proxy_wasm_experimental/types/enum.StreamType.html
+++ b/proxy_wasm_experimental/types/enum.StreamType.html
@@ -1,26 +1,30 @@
-proxy_wasm_experimental::types::StreamType - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/types/index.html b/proxy_wasm_experimental/types/index.html
index 0a2478c2..dca51681 100644
--- a/proxy_wasm_experimental/types/index.html
+++ b/proxy_wasm_experimental/types/index.html
@@ -1,6 +1,9 @@
-proxy_wasm_experimental::types - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/types/sidebar-items.js b/proxy_wasm_experimental/types/sidebar-items.js
index 842e7d3a..c873916a 100644
--- a/proxy_wasm_experimental/types/sidebar-items.js
+++ b/proxy_wasm_experimental/types/sidebar-items.js
@@ -1 +1 @@
-initSidebarItems({"enum":[["Action",""],["BufferType",""],["LogLevel",""],["MapType",""],["PeerType",""],["Status",""],["StreamType",""]],"struct":[["ByteString","Represents a string value that is not necessarily UTF-8 encoded, e.g. an HTTP header value."]],"type":[["NewHttpContext",""],["NewRootContext",""],["NewStreamContext",""]]});
\ No newline at end of file
+initSidebarItems({"enum":[["Action",""],["BufferType",""],["ContextType",""],["LogLevel",""],["MapType",""],["MetricType",""],["PeerType",""],["Status",""],["StreamType",""]],"struct":[["ByteString","Represents a string value that is not necessarily UTF-8 encoded, e.g. an HTTP header value."]],"type":[["NewHttpContext",""],["NewRootContext",""],["NewStreamContext",""]]});
\ No newline at end of file
diff --git a/proxy_wasm_experimental/types/struct.ByteString.html b/proxy_wasm_experimental/types/struct.ByteString.html
index 0090774f..471b152e 100644
--- a/proxy_wasm_experimental/types/struct.ByteString.html
+++ b/proxy_wasm_experimental/types/struct.ByteString.html
@@ -1,60 +1,76 @@
-proxy_wasm_experimental::types::ByteString - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/types/type.NewHttpContext.html b/proxy_wasm_experimental/types/type.NewHttpContext.html
index 68261de3..2aecb782 100644
--- a/proxy_wasm_experimental/types/type.NewHttpContext.html
+++ b/proxy_wasm_experimental/types/type.NewHttpContext.html
@@ -1 +1,4 @@
-proxy_wasm_experimental::types::NewHttpContext - Rust
type NewHttpContext = fn(context_id: u32, root_context_id: u32) -> Box<dyn HttpContext>;
\ No newline at end of file
diff --git a/proxy_wasm_experimental/types/type.NewRootContext.html b/proxy_wasm_experimental/types/type.NewRootContext.html
index 106dbaba..762da640 100644
--- a/proxy_wasm_experimental/types/type.NewRootContext.html
+++ b/proxy_wasm_experimental/types/type.NewRootContext.html
@@ -1 +1,4 @@
-proxy_wasm_experimental::types::NewRootContext - Rust
\ No newline at end of file
diff --git a/proxy_wasm_experimental/types/type.NewStreamContext.html b/proxy_wasm_experimental/types/type.NewStreamContext.html
index 345cdea2..2c661d7c 100644
--- a/proxy_wasm_experimental/types/type.NewStreamContext.html
+++ b/proxy_wasm_experimental/types/type.NewStreamContext.html
@@ -1 +1,4 @@
-proxy_wasm_experimental::types::NewStreamContext - Rust
\ No newline at end of file
diff --git a/rustdoc.css b/rustdoc.css
index cbf40b22..757de199 100644
--- a/rustdoc.css
+++ b/rustdoc.css
@@ -1 +1 @@
- @font-face {font-family:'Fira Sans';font-style:normal;font-weight:400;src:local('Fira Sans'),url("FiraSans-Regular.woff") format('woff');}@font-face {font-family:'Fira Sans';font-style:normal;font-weight:500;src:local('Fira Sans Medium'),url("FiraSans-Medium.woff") format('woff');}@font-face {font-family:'Source Serif Pro';font-style:normal;font-weight:400;src:local('Source Serif Pro'),url("SourceSerifPro-Regular.ttf.woff") format('woff');}@font-face {font-family:'Source Serif Pro';font-style:italic;font-weight:400;src:local('Source Serif Pro Italic'),url("SourceSerifPro-It.ttf.woff") format('woff');}@font-face {font-family:'Source Serif Pro';font-style:normal;font-weight:700;src:local('Source Serif Pro Bold'),url("SourceSerifPro-Bold.ttf.woff") format('woff');}@font-face {font-family:'Source Code Pro';font-style:normal;font-weight:400;src:url("SourceCodePro-Regular.woff") format('woff');}@font-face {font-family:'Source Code Pro';font-style:normal;font-weight:600;src:url("SourceCodePro-Semibold.woff") format('woff');}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}html{content:"";}@media (prefers-color-scheme:light){html{content:"light";}}@media (prefers-color-scheme:dark){html{content:"dark";}}body{font:16px/1.4 "Source Serif Pro",serif;margin:0;position:relative;padding:10px 15px 20px 15px;-webkit-font-feature-settings:"kern","liga";-moz-font-feature-settings:"kern","liga";font-feature-settings:"kern","liga";}h1{font-size:1.5em;}h2{font-size:1.4em;}h3{font-size:1.3em;}h1,h2,h3:not(.impl):not(.method):not(.type):not(.tymethod):not(.important),h4:not(.method):not(.type):not(.tymethod):not(.associatedconstant){font-weight:500;margin:20px 0 15px 0;padding-bottom:6px;}h1.fqn{border-bottom:1px dashed;margin-top:0;}h1.fqn>.in-band>a:hover{text-decoration:underline;}h2,h3:not(.impl):not(.method):not(.type):not(.tymethod),h4:not(.method):not(.type):not(.tymethod):not(.associatedconstant){border-bottom:1px solid;}h3.impl,h3.method,h4.method,h3.type,h4.type,h4.associatedconstant{flex-basis:100%;font-weight:600;margin-top:16px;margin-bottom:10px;position:relative;}h3.impl,h3.method,h3.type{padding-left:15px;}h1,h2,h3,h4,.sidebar,a.source,.search-input,.content table :not(code)>a,.collapse-toggle,div.item-list .out-of-band,#source-sidebar,#sidebar-toggle{font-family:"Fira Sans",sans-serif;}ol,ul{padding-left:25px;}ul ul,ol ul,ul ol,ol ol{margin-bottom:.6em;}p{margin:0 0 .6em 0;}summary{outline:none;}code,pre,a.test-arrow{font-family:"Source Code Pro",monospace;}.docblock code,.docblock-short code{border-radius:3px;padding:0 0.1em;}.docblock pre code,.docblock-short pre code{padding:0;}pre{padding:14px;}.source .content pre{padding:20px;}img{max-width:100%;}li{position:relative;}.source .content{margin-top:50px;max-width:none;overflow:visible;margin-left:0px;min-width:70em;}nav.sub{font-size:16px;text-transform:uppercase;}.sidebar{width:200px;position:fixed;left:0;top:0;bottom:0;overflow:auto;}*{scrollbar-width:initial;}.sidebar{scrollbar-width:thin;}::-webkit-scrollbar{width:12px;}.sidebar::-webkit-scrollbar{width:8px;}::-webkit-scrollbar-track{-webkit-box-shadow:inset 0;}.sidebar .block>ul>li{margin-right:-10px;}.content,nav{max-width:960px;}.hidden{display:none !important;}.logo-container{height:100px;width:100px;position:relative;margin:20px auto;display:block;margin-top:10px;}.logo-container>img{max-width:100px;max-height:100px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;}.sidebar .location{border:1px solid;font-size:17px;margin:30px 10px 20px 10px;text-align:center;word-wrap:break-word;}.sidebar .version{font-size:15px;text-align:center;border-bottom:1px solid;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;}.location:empty{border:none;}.location a:first-child{font-weight:500;}.block{padding:0;margin-bottom:14px;}.block h2,.block h3{margin-top:0;margin-bottom:8px;text-align:center;}.block ul,.block li{margin:0 10px;padding:0;list-style:none;}.block a{display:block;text-overflow:ellipsis;overflow:hidden;line-height:15px;padding:7px 5px;font-size:14px;font-weight:300;transition:border 500ms ease-out;}.sidebar-title{border-top:1px solid;border-bottom:1px solid;text-align:center;font-size:17px;margin-bottom:5px;}.sidebar-links{margin-bottom:15px;}.sidebar-links>a{padding-left:10px;width:100%;}.sidebar-menu{display:none;}.content{padding:15px 0;}.source .content pre.rust{white-space:pre;overflow:auto;padding-left:0;}.rustdoc:not(.source) .example-wrap{display:inline-flex;margin-bottom:10px;position:relative;}.example-wrap{width:100%;}.example-wrap>pre.line-number{overflow:initial;border:1px solid;border-top-left-radius:5px;border-bottom-left-radius:5px;padding:13px 8px;text-align:right;}.rustdoc:not(.source) .example-wrap>pre.rust{width:100%;overflow-x:auto;}.rustdoc:not(.source) .example-wrap>pre{margin:0;}#search{margin-left:230px;position:relative;}#results{position:absolute;right:0;left:0;overflow:auto;}#results>table{width:100%;table-layout:fixed;}.content pre.line-numbers{float:left;border:none;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}.line-numbers span{cursor:pointer;}.docblock-short p{display:inline;}.docblock-short.nowrap{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.docblock-short p{overflow:hidden;text-overflow:ellipsis;margin:0;}.docblock code,.docblock-short code{white-space:pre-wrap;}.docblock h1,.docblock h2,.docblock h3,.docblock h4,.docblock h5{border-bottom:1px solid;}#main>.docblock h1{font-size:1.3em;}#main>.docblock h2{font-size:1.15em;}#main>.docblock h3,#main>.docblock h4,#main>.docblock h5{font-size:1em;}#main>h2+div,#main>h2+h3,#main>h3+div{display:none;flex-wrap:wrap;}.docblock h1{font-size:1em;}.docblock h2{font-size:0.95em;}.docblock h3,.docblock h4,.docblock h5{font-size:0.9em;}.docblock{margin-left:24px;position:relative;}.content .out-of-band{float:right;font-size:23px;margin:0px;padding:0px;font-weight:normal;}h3.impl>.out-of-band{font-size:21px;}h4.method>.out-of-band{font-size:19px;}h4>code,h3>code,.invisible>code{max-width:calc(100% - 41px);display:block;}.invisible{width:100%;display:inline-block;}.content .in-band{margin:0px;padding:0px;}.in-band>code{display:inline-block;}#main{position:relative;}#main>.since{top:inherit;font-family:"Fira Sans",sans-serif;}.content table:not(.table-display){border-spacing:0 5px;}.content td{vertical-align:top;}.content td:first-child{padding-right:20px;}.content td p:first-child{margin-top:0;}.content td h1,.content td h2{margin-left:0;font-size:1.1em;}.content tr:first-child td{border-top:0;}.docblock table{margin:.5em 0;width:calc(100% - 2px);border:1px dashed;}.docblock table td{padding:.5em;border:1px dashed;}.docblock table th{padding:.5em;text-align:left;border:1px solid;}.fields+table{margin-bottom:1em;}.content .item-list{list-style-type:none;padding:0;}.content .multi-column{-moz-column-count:5;-moz-column-gap:2.5em;-webkit-column-count:5;-webkit-column-gap:2.5em;column-count:5;column-gap:2.5em;}.content .multi-column li{width:100%;display:inline-block;}.content .method{font-size:1em;position:relative;}.content .method .where,.content .fn .where,.content .where.fmt-newline{display:block;font-size:0.8em;}.content .methods>div{margin-left:40px;margin-bottom:15px;}.content .docblock>.impl-items{margin-left:20px;margin-top:-34px;}.content .docblock>.impl-items>h4{border-bottom:0;}.content .docblock>.impl-items .table-display{margin:0;}.content .docblock>.impl-items table td{padding:0;}.toggle-wrapper.marg-left>.collapse-toggle{left:-24px;}.content .docblock>.impl-items .table-display,.impl-items table td{border:none;}.content .stability code{font-size:90%;}.content .stability{position:relative;margin-left:33px;margin-top:-13px;}.sub-variant>div>.stability{margin-top:initial;}.content .stability::before{content:'⬑';font-size:25px;position:absolute;top:-6px;left:-19px;}.content .impl-items .method,.content .impl-items>.type,.impl-items>.associatedconstant{margin-left:20px;}.content .impl-items .docblock,.content .impl-items .stability{margin-bottom:.6em;}.content .impl-items>.stability{margin-left:40px;}.methods>.stability,.content .impl-items>.stability{margin-top:-8px;}.impl-items{flex-basis:100%;}#main>.stability{margin-top:0;}nav:not(.sidebar){border-bottom:1px solid;padding-bottom:10px;margin-bottom:10px;}nav.main{padding:20px 0;text-align:center;}nav.main .current{border-top:1px solid;border-bottom:1px solid;}nav.main .separator{border:1px solid;display:inline-block;height:23px;margin:0 20px;}nav.sum{text-align:right;}nav.sub form{display:inline;}nav.sub,.content{margin-left:230px;}a{text-decoration:none;background:transparent;}.small-section-header:hover>.anchor{display:initial;}.in-band:hover>.anchor,.impl:hover>.anchor{display:inline-block;position:absolute;}.anchor{display:none;position:absolute;left:-7px;}.anchor.field{left:-5px;}.small-section-header>.anchor{left:-28px;padding-right:10px;}.anchor:before{content:'\2002\00a7\2002';}.docblock a:not(.srclink):not(.test-arrow):hover,.docblock-short a:not(.srclink):not(.test-arrow):hover,.stability a{text-decoration:underline;}.invisible>.srclink,h4>code+.srclink{position:absolute;top:0;right:0;font-size:17px;font-weight:normal;}.block a.current.crate{font-weight:500;}.search-container{position:relative;}.search-container>div{display:inline-flex;width:calc(100% - 34px);}#crate-search{margin-top:5px;padding:6px;padding-right:19px;flex:none;border:0;border-right:0;border-radius:4px 0 0 4px;outline:none;cursor:pointer;border-right:1px solid;-moz-appearance:none;-webkit-appearance:none;text-indent:0.01px;text-overflow:"";background-repeat:no-repeat;background-color:transparent;background-size:20px;background-position:calc(100% - 1px) 56%;}.search-container>.top-button{position:absolute;right:0;top:10px;}.search-input{-moz-box-sizing:border-box !important;box-sizing:border-box !important;outline:none;border:none;border-radius:1px;margin-top:5px;padding:10px 16px;font-size:17px;transition:border-color 300ms ease;transition:border-radius 300ms ease-in-out;transition:box-shadow 300ms ease-in-out;width:100%;}#crate-search+.search-input{border-radius:0 1px 1px 0;width:calc(100% - 32px);}.search-input:focus{border-radius:2px;border:0;outline:0;}.search-results .desc{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:block;}.search-results a{display:block;}.content .search-results td:first-child{padding-right:0;width:50%;}.content .search-results td:first-child a{padding-right:10px;}.content .search-results td:first-child a:after{clear:both;content:"";display:block;}.content .search-results td:first-child a span{float:left;}tr.result span.primitive::after{content:' (primitive type)';font-style:italic;}tr.result span.keyword::after{content:' (keyword)';font-style:italic;}body.blur>:not(#help){filter:blur(8px);-webkit-filter:blur(8px);opacity:.7;}#help{width:100%;height:100vh;position:fixed;top:0;left:0;display:flex;justify-content:center;align-items:center;}#help>div{flex:0 0 auto;box-shadow:0 0 6px rgba(0,0,0,.2);width:550px;height:auto;border:1px solid;}#help dt{float:left;clear:left;display:block;}#help dd{margin:5px 35px;}#help .infos{padding-left:0;}#help h1,#help h2{margin-top:0;}#help>div div{width:50%;float:left;padding:20px;padding-left:17px;}.stab{display:table;border-width:1px;border-style:solid;padding:3px;margin-bottom:5px;font-size:90%;}.stab p{display:inline;}.stab summary{display:list-item;}.stab .emoji{font-size:1.5em;}.module-item .stab{border-radius:3px;display:inline-block;font-size:80%;line-height:1.2;margin-bottom:0;margin-right:.3em;padding:2px;vertical-align:text-bottom;}.module-item.unstable{opacity:0.65;}.since{font-weight:normal;font-size:initial;position:absolute;right:0;top:0;}.impl-items .since,.impl .since{flex-grow:0;padding-left:12px;padding-right:2px;position:initial;}.impl-items .srclink,.impl .srclink{flex-grow:0;font-size:17px;font-weight:normal;}.impl-items code,.impl code{flex-grow:1;}.impl-items h4,h4.impl,h3.impl{display:flex;flex-basis:100%;font-size:16px;margin-bottom:12px;justify-content:space-between;}.variants_table{width:100%;}.variants_table tbody tr td:first-child{width:1%;}td.summary-column{width:100%;}.summary{padding-right:0px;}pre.rust .question-mark{font-weight:bold;}a.test-arrow{display:inline-block;position:absolute;padding:5px 10px 5px 10px;border-radius:5px;font-size:130%;top:5px;right:5px;z-index:1;}a.test-arrow:hover{text-decoration:none;}.section-header:hover a:before{position:absolute;left:-25px;padding-right:10px;content:'\2002\00a7\2002';}.section-header:hover a{text-decoration:none;}.section-header a{color:inherit;}.collapse-toggle{font-weight:300;position:absolute;left:-23px;top:0;}h3>.collapse-toggle,h4>.collapse-toggle{font-size:0.8em;top:5px;}.toggle-wrapper>.collapse-toggle{left:-24px;margin-top:0px;}.toggle-wrapper{position:relative;margin-top:0;}.toggle-wrapper.collapsed{height:25px;transition:height .2s;margin-bottom:.6em;}.collapse-toggle>.inner{display:inline-block;width:1.2ch;text-align:center;}.collapse-toggle.hidden-default{position:relative;margin-left:20px;}.since+.srclink{display:table-cell;padding-left:10px;}.item-spacer{width:100%;height:12px;}.out-of-band>span.since{position:initial;font-size:20px;margin-right:5px;}.toggle-wrapper>.collapse-toggle{left:0;}.variant+.toggle-wrapper+.docblock>p{margin-top:5px;}.sub-variant,.sub-variant>h3{margin-top:1px !important;}#main>.sub-variant>h3{font-size:15px;margin-left:25px;margin-bottom:5px;}.sub-variant>div{margin-left:20px;margin-bottom:10px;}.sub-variant>div>span{display:block;position:relative;}.toggle-label{display:inline-block;margin-left:4px;margin-top:3px;}.enum>.toggle-wrapper+.docblock,.struct>.toggle-wrapper+.docblock{margin-left:30px;margin-bottom:20px;margin-top:5px;}.docblock>.section-header:first-child{margin-left:15px;margin-top:0;}.docblock>.section-header:first-child:hover>a:before{left:-10px;}.enum>.collapsed,.struct>.collapsed{margin-bottom:25px;}#main>.variant,#main>.structfield{display:block;}.attributes{display:block;margin-top:0px !important;margin-right:0px;margin-bottom:0px !important;margin-left:30px;}.toggle-attributes.collapsed{margin-bottom:0;}.impl-items>.toggle-attributes{margin-left:20px;}.impl-items .attributes{font-weight:500;}:target>code{opacity:1;}.information{position:absolute;left:-25px;margin-top:7px;z-index:1;}.tooltip{position:relative;display:inline-block;cursor:pointer;}.tooltip .tooltiptext{width:120px;display:none;text-align:center;padding:5px 3px 3px 3px;border-radius:6px;margin-left:5px;top:-5px;left:105%;z-index:10;font-size:16px;}.tooltip:hover .tooltiptext{display:inline;}.tooltip .tooltiptext::after{content:" ";position:absolute;top:50%;left:16px;margin-top:-5px;border-width:5px;border-style:solid;}.tooltip.compile_fail,.tooltip.should_panic,.tooltip.ignore{font-weight:bold;font-size:20px;}.tooltip .tooltiptext{border:1px solid;font-weight:normal;}pre.rust{position:relative;tab-size:4;-moz-tab-size:4;}.search-failed{text-align:center;margin-top:20px;}.search-failed>ul{text-align:left;max-width:570px;margin-left:auto;margin-right:auto;}#titles{height:35px;}#titles>div{float:left;width:33.3%;text-align:center;font-size:18px;cursor:pointer;border-top:2px solid;}#titles>div:not(:last-child){margin-right:1px;width:calc(33.3% - 1px);}#titles>div>div.count{display:inline-block;font-size:16px;}#all-types{text-align:center;border:1px solid;margin:0 10px;margin-bottom:10px;display:block;border-radius:7px;}#all-types>p{margin:5px 0;}#sidebar-toggle{position:fixed;top:30px;left:300px;z-index:10;padding:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;cursor:pointer;font-weight:bold;transition:left .5s;font-size:1.2em;border:1px solid;border-left:0;}#source-sidebar{position:fixed;top:0;bottom:0;left:0;width:300px;z-index:1;overflow:auto;transition:left .5s;border-right:1px solid;}#source-sidebar>.title{font-size:1.5em;text-align:center;border-bottom:1px solid;margin-bottom:6px;}.theme-picker{position:absolute;left:211px;top:19px;}.theme-picker button{outline:none;}#settings-menu{position:absolute;right:0;top:10px;outline:none;}#theme-picker,#settings-menu{padding:4px;width:27px;height:29px;border:1px solid;border-radius:3px;cursor:pointer;}#theme-choices{display:none;position:absolute;left:0;top:28px;border:1px solid;border-radius:3px;z-index:1;cursor:pointer;}#theme-choices>button{border:none;width:100%;padding:4px;text-align:center;background:rgba(0,0,0,0);}#theme-choices>button:not(:first-child){border-top:1px solid;}@media (max-width:700px){body{padding-top:0px;}.rustdoc>.sidebar{height:45px;min-height:40px;margin:0;margin-left:-15px;padding:0 15px;position:static;z-index:11;}.sidebar>.location{float:right;margin:0px;margin-top:2px;padding:3px 10px 1px 10px;min-height:39px;background:inherit;text-align:left;font-size:24px;}.sidebar .location:empty{padding:0;}.sidebar .logo-container{width:35px;height:35px;margin-top:5px;margin-bottom:5px;float:left;margin-left:50px;}.sidebar .logo-container>img{max-width:35px;max-height:35px;}.sidebar-menu{position:fixed;z-index:10;font-size:2rem;cursor:pointer;width:45px;left:0;text-align:center;display:block;border-bottom:1px solid;border-right:1px solid;height:45px;}.rustdoc.source>.sidebar>.sidebar-menu{display:none;}.sidebar-elems{position:fixed;z-index:1;left:0;top:45px;bottom:0;overflow-y:auto;border-right:1px solid;display:none;}.sidebar>.block.version{border-bottom:none;margin-top:12px;}nav.sub{width:calc(100% - 32px);float:right;}.content{margin-left:0px;}#main{margin-top:45px;padding:0;}.content .in-band{width:100%;}.content h4>.out-of-band{position:inherit;}.toggle-wrapper>.collapse-toggle{left:0px;}.toggle-wrapper{height:1.5em;}#search{margin-left:0;}.content .impl-items .method,.content .impl-items>.type,.impl-items>.associatedconstant{display:flex;}.anchor{display:none !important;}h1.fqn{overflow:initial;}.theme-picker{left:10px;top:54px;z-index:1;}#titles>div>div.count{float:left;width:100%;}#titles{height:50px;}.sidebar.mobile{position:fixed;width:100%;margin-left:0;background-color:rgba(0,0,0,0);height:100%;}.sidebar{width:calc(100% + 30px);}.show-it{display:block;width:246px;}.show-it>.block.items{margin:8px 0;}.show-it>.block.items>ul{margin:0;}.show-it>.block.items>ul>li{text-align:center;margin:2px 0;}.show-it>.block.items>ul>li>a{font-size:21px;}#sidebar-filler{position:fixed;left:45px;width:calc(100% - 45px);top:0;height:45px;z-index:-1;border-bottom:1px solid;}.collapse-toggle{left:-20px;}.impl>.collapse-toggle{left:-10px;}#all-types{margin:10px;}#sidebar-toggle{top:100px;width:30px;font-size:1.5rem;text-align:center;padding:0;}#source-sidebar{z-index:11;}#main>.line-numbers{margin-top:0;}}@media print{nav.sub,.content .out-of-band,.collapse-toggle{display:none;}}@media (max-width:416px){#titles{height:73px;}#titles>div{height:73px;}}h3.important{margin:0;margin-bottom:13px;font-size:19px;}kbd{display:inline-block;padding:3px 5px;font:15px monospace;line-height:10px;vertical-align:middle;border:solid 1px;border-radius:3px;box-shadow:inset 0 -1px 0;cursor:default;}.hidden-by-impl-hider,.hidden-by-usual-hider{display:none !important;}#implementations-list>h3>span.in-band{width:100%;}.table-display{width:100%;border:0;border-collapse:collapse;border-spacing:0;font-size:16px;}.table-display tr td:first-child{padding-right:0;}.table-display tr td:last-child{float:right;}.table-display .out-of-band{position:relative;font-size:19px;display:block;}#implementors-list>.impl-items .table-display .out-of-band{font-size:17px;}.table-display td:hover .anchor{display:block;top:2px;left:-5px;}#main>ul{padding-left:10px;}#main>ul>li{list-style:none;}.non-exhaustive{margin-bottom:1em;}div.children{padding-left:27px;display:none;}div.name{cursor:pointer;position:relative;margin-left:16px;}div.files>a{display:block;padding:0 3px;}div.files>a:hover,div.name:hover{background-color:#a14b4b;}div.name.expand+.children{display:block;}div.name::before{content:"\25B6";padding-left:4px;font-size:0.7em;position:absolute;left:-16px;top:4px;}div.name.expand::before{transform:rotate(90deg);left:-15px;top:2px;}.type-decl>pre>.toggle-wrapper.toggle-attributes.top-attr{margin-left:0 !important;}.type-decl>pre>.docblock.attributes.top-attr{margin-left:1.8em !important;}.type-decl>pre>.toggle-attributes{margin-left:2.2em;}.type-decl>pre>.docblock.attributes{margin-left:4em;}
\ No newline at end of file
+ @font-face {font-family:'Fira Sans';font-style:normal;font-weight:400;src:local('Fira Sans'),url("FiraSans-Regular.woff") format('woff');}@font-face {font-family:'Fira Sans';font-style:normal;font-weight:500;src:local('Fira Sans Medium'),url("FiraSans-Medium.woff") format('woff');}@font-face {font-family:'Source Serif Pro';font-style:normal;font-weight:400;src:local('Source Serif Pro'),url("SourceSerifPro-Regular.ttf.woff") format('woff');}@font-face {font-family:'Source Serif Pro';font-style:italic;font-weight:400;src:local('Source Serif Pro Italic'),url("SourceSerifPro-It.ttf.woff") format('woff');}@font-face {font-family:'Source Serif Pro';font-style:normal;font-weight:700;src:local('Source Serif Pro Bold'),url("SourceSerifPro-Bold.ttf.woff") format('woff');}@font-face {font-family:'Source Code Pro';font-style:normal;font-weight:400;src:url("SourceCodePro-Regular.woff") format('woff');}@font-face {font-family:'Source Code Pro';font-style:normal;font-weight:600;src:url("SourceCodePro-Semibold.woff") format('woff');}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}html{content:"";}@media (prefers-color-scheme:light){html{content:"light";}}@media (prefers-color-scheme:dark){html{content:"dark";}}body{font:16px/1.4 "Source Serif Pro",serif;margin:0;position:relative;padding:10px 15px 20px 15px;-webkit-font-feature-settings:"kern","liga";-moz-font-feature-settings:"kern","liga";font-feature-settings:"kern","liga";}h1{font-size:1.5em;}h2{font-size:1.4em;}h3{font-size:1.3em;}h1,h2,h3:not(.impl):not(.method):not(.type):not(.tymethod):not(.notable),h4:not(.method):not(.type):not(.tymethod):not(.associatedconstant){font-weight:500;margin:20px 0 15px 0;padding-bottom:6px;}h1.fqn{border-bottom:1px dashed;margin-top:0;}h1.fqn>.in-band>a:hover{text-decoration:underline;}h2,h3:not(.impl):not(.method):not(.type):not(.tymethod),h4:not(.method):not(.type):not(.tymethod):not(.associatedconstant){border-bottom:1px solid;}h3.impl,h3.method,h4.method,h3.type,h4.type,h4.associatedconstant{flex-basis:100%;font-weight:600;margin-top:16px;margin-bottom:10px;position:relative;}h3.impl,h3.method,h3.type{padding-left:15px;}h1,h2,h3,h4,.sidebar,a.source,.search-input,.content table td:first-child>a,.collapse-toggle,div.item-list .out-of-band,#source-sidebar,#sidebar-toggle{font-family:"Fira Sans",sans-serif;}.content ul.crate a.crate{font:16px/1.6 "Fira Sans";}ol,ul{padding-left:25px;}ul ul,ol ul,ul ol,ol ol{margin-bottom:.6em;}p{margin:0 0 .6em 0;}summary{outline:none;}code,pre,a.test-arrow{font-family:"Source Code Pro",monospace;}.docblock code,.docblock-short code{border-radius:3px;padding:0 0.1em;}.docblock pre code,.docblock-short pre code,.docblock code.spotlight{padding:0;}.docblock code.spotlight :last-child{padding-bottom:0.6em;}pre{padding:14px;}.source .content pre{padding:20px;}img{max-width:100%;}li{position:relative;}.source .content{margin-top:50px;max-width:none;overflow:visible;margin-left:0px;min-width:70em;}nav.sub{font-size:16px;text-transform:uppercase;}.sidebar{width:200px;position:fixed;left:0;top:0;bottom:0;overflow:auto;}*{scrollbar-width:initial;}.sidebar{scrollbar-width:thin;}::-webkit-scrollbar{width:12px;}.sidebar::-webkit-scrollbar{width:8px;}::-webkit-scrollbar-track{-webkit-box-shadow:inset 0;}.sidebar .block>ul>li{margin-right:-10px;}.content,nav{max-width:960px;}.hidden{display:none !important;}.logo-container{height:100px;width:100px;position:relative;margin:20px auto;display:block;margin-top:10px;}.logo-container>img{max-width:100px;max-height:100px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;}.sidebar .location{border:1px solid;font-size:17px;margin:30px 10px 20px 10px;text-align:center;word-wrap:break-word;}.sidebar .version{font-size:15px;text-align:center;border-bottom:1px solid;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;}.location:empty{border:none;}.location a:first-child{font-weight:500;}.block{padding:0;margin-bottom:14px;}.block h2,.block h3{margin-top:0;margin-bottom:8px;text-align:center;}.block ul,.block li{margin:0 10px;padding:0;list-style:none;}.block a{display:block;text-overflow:ellipsis;overflow:hidden;line-height:15px;padding:7px 5px;font-size:14px;font-weight:300;transition:border 500ms ease-out;}.sidebar-title{border-top:1px solid;border-bottom:1px solid;text-align:center;font-size:17px;margin-bottom:5px;}.sidebar-links{margin-bottom:15px;}.sidebar-links>a{padding-left:10px;width:100%;}.sidebar-menu{display:none;}.content{padding:15px 0;}.source .content pre.rust{white-space:pre;overflow:auto;padding-left:0;}.rustdoc:not(.source) .example-wrap{display:inline-flex;margin-bottom:10px;position:relative;}.example-wrap{width:100%;}.example-wrap>pre.line-number{overflow:initial;border:1px solid;border-top-left-radius:5px;border-bottom-left-radius:5px;padding:13px 8px;text-align:right;}.rustdoc:not(.source) .example-wrap>pre.rust{width:100%;overflow-x:auto;}.rustdoc:not(.source) .example-wrap>pre{margin:0;}#search{margin-left:230px;position:relative;}#results{position:absolute;right:0;left:0;overflow:auto;}#results>table{width:100%;table-layout:fixed;margin-bottom:40px;}.content pre.line-numbers{float:left;border:none;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}.line-numbers span{cursor:pointer;}.docblock-short{overflow-wrap:anywhere;}.docblock-short p{display:inline;}.docblock-short p{overflow:hidden;text-overflow:ellipsis;margin:0;}.docblock code,.docblock-short code{white-space:pre-wrap;}.docblock h1,.docblock h2,.docblock h3,.docblock h4,.docblock h5{border-bottom:1px solid;}#main>.docblock h1{font-size:1.3em;}#main>.docblock h2{font-size:1.15em;}#main>.docblock h3,#main>.docblock h4,#main>.docblock h5{font-size:1em;}#main>h2+div,#main>h2+h3,#main>h3+div{display:none;flex-wrap:wrap;}.docblock h1{font-size:1em;}.docblock h2{font-size:0.95em;}.docblock h3,.docblock h4,.docblock h5{font-size:0.9em;}.docblock{margin-left:24px;position:relative;}.content .out-of-band{float:right;font-size:23px;margin:0px;padding:0px;font-weight:normal;}h3.impl>.out-of-band{font-size:21px;}h4.method>.out-of-band{font-size:19px;}h4>code,h3>code,.invisible>code{max-width:calc(100% - 41px);display:block;}.invisible{width:100%;display:inline-block;}.content .in-band{margin:0px;padding:0px;}.in-band>code{display:inline-block;}#main{position:relative;}#main>.since{top:inherit;font-family:"Fira Sans",sans-serif;}.content table:not(.table-display){border-spacing:0 5px;}.content td{vertical-align:top;}.content td:first-child{padding-right:20px;}.content td p:first-child{margin-top:0;}.content td h1,.content td h2{margin-left:0;font-size:1.1em;}.content tr:first-child td{border-top:0;}.docblock table{margin:.5em 0;width:calc(100% - 2px);border:1px dashed;}.docblock table td{padding:.5em;border:1px dashed;}.docblock table th{padding:.5em;text-align:left;border:1px solid;}.fields+table{margin-bottom:1em;}.content .item-list{list-style-type:none;padding:0;}.content .multi-column{-moz-column-count:5;-moz-column-gap:2.5em;-webkit-column-count:5;-webkit-column-gap:2.5em;column-count:5;column-gap:2.5em;}.content .multi-column li{width:100%;display:inline-block;}.content .method{font-size:1em;position:relative;}.content .method .where,.content .fn .where,.content .where.fmt-newline{display:block;font-size:0.8em;}.content .methods>div:not(.notable-traits){margin-left:40px;margin-bottom:15px;}.content .docblock>.impl-items{margin-left:20px;margin-top:-34px;}.content .docblock>.impl-items>h4{border-bottom:0;}.content .docblock>.impl-items .table-display{margin:0;}.content .docblock>.impl-items table td{padding:0;}.toggle-wrapper.marg-left>.collapse-toggle{left:-24px;}.content .docblock>.impl-items .table-display,.impl-items table td{border:none;}.content .item-info code{font-size:90%;}.content .item-info{position:relative;margin-left:33px;margin-top:-13px;}.sub-variant>div>.item-info{margin-top:initial;}.content .item-info::before{content:'⬑';font-size:25px;position:absolute;top:-6px;left:-19px;}.content .impl-items .method,.content .impl-items>.type,.impl-items>.associatedconstant{margin-left:20px;}.content .impl-items .docblock,.content .impl-items .item-info{margin-bottom:.6em;}.content .impl-items>.item-info{margin-left:40px;}.methods>.item-info,.content .impl-items>.item-info{margin-top:-8px;}.impl-items{flex-basis:100%;}#main>.item-info{margin-top:0;}nav:not(.sidebar){border-bottom:1px solid;padding-bottom:10px;margin-bottom:10px;}nav.main{padding:20px 0;text-align:center;}nav.main .current{border-top:1px solid;border-bottom:1px solid;}nav.main .separator{border:1px solid;display:inline-block;height:23px;margin:0 20px;}nav.sum{text-align:right;}nav.sub form{display:inline;}nav.sub,.content{margin-left:230px;}a{text-decoration:none;background:transparent;}.small-section-header:hover>.anchor{display:initial;}.in-band:hover>.anchor,.impl:hover>.anchor{display:inline-block;position:absolute;}.anchor{display:none;position:absolute;left:-7px;}.anchor.field{left:-5px;}.small-section-header>.anchor{left:-28px;padding-right:10px;}.anchor:before{content:'\2002\00a7\2002';}.docblock a:not(.srclink):not(.test-arrow):hover,.docblock-short a:not(.srclink):not(.test-arrow):hover,.item-info a{text-decoration:underline;}.invisible>.srclink,h4>code+.srclink,h3>code+.srclink{position:absolute;top:0;right:0;font-size:17px;font-weight:normal;}.block a.current.crate{font-weight:500;}.search-container{position:relative;}.search-container>div{display:inline-flex;width:calc(100% - 63px);}#crate-search{margin-top:5px;padding:6px;padding-right:19px;flex:none;border:0;border-right:0;border-radius:4px 0 0 4px;outline:none;cursor:pointer;border-right:1px solid;-moz-appearance:none;-webkit-appearance:none;text-indent:0.01px;text-overflow:"";background-repeat:no-repeat;background-color:transparent;background-size:20px;background-position:calc(100% - 1px) 56%;}.search-container>.top-button{position:absolute;right:0;top:10px;}.search-input{-moz-box-sizing:border-box !important;box-sizing:border-box !important;outline:none;border:none;border-radius:1px;margin-top:5px;padding:10px 16px;font-size:17px;transition:border-color 300ms ease;transition:border-radius 300ms ease-in-out;transition:box-shadow 300ms ease-in-out;width:100%;}#crate-search+.search-input{border-radius:0 1px 1px 0;width:calc(100% - 32px);}.search-input:focus{border-radius:2px;border:0;outline:0;}.search-results .desc{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:block;}.search-results a{display:block;}.content .search-results td:first-child{padding-right:0;width:50%;}.content .search-results td:first-child a{padding-right:10px;}.content .search-results td:first-child a:after{clear:both;content:"";display:block;}.content .search-results td:first-child a span{float:left;}tr.result span.primitive::after{content:' (primitive type)';font-style:italic;}tr.result span.keyword::after{content:' (keyword)';font-style:italic;}body.blur>:not(#help){filter:blur(8px);-webkit-filter:blur(8px);opacity:.7;}#help{width:100%;height:100vh;position:fixed;top:0;left:0;display:flex;justify-content:center;align-items:center;}#help>div{flex:0 0 auto;box-shadow:0 0 6px rgba(0,0,0,.2);width:550px;height:auto;border:1px solid;}#help dt{float:left;clear:left;display:block;}#help>div>span{text-align:center;display:block;margin:10px 0;font-size:18px;border-bottom:1px solid #ccc;padding-bottom:4px;margin-bottom:6px;}#help dd{margin:5px 35px;}#help .infos{padding-left:0;}#help h1,#help h2{margin-top:0;}#help>div div{width:50%;float:left;padding:0 20px 20px 17px;;}.stab{display:table;border-width:1px;border-style:solid;padding:3px;margin-bottom:5px;font-size:90%;}.stab p{display:inline;}.stab summary{display:list-item;}.stab .emoji{font-size:1.5em;}.module-item .stab{border-radius:3px;display:inline-block;font-size:80%;line-height:1.2;margin-bottom:0;margin-right:.3em;padding:2px;vertical-align:text-bottom;}.module-item.unstable{opacity:0.65;}.since{font-weight:normal;font-size:initial;position:absolute;right:0;top:0;}.impl-items .since,.impl .since,.methods .since{flex-grow:0;padding-left:12px;padding-right:2px;position:initial;}.impl-items .srclink,.impl .srclink,.methods .srclink{flex-grow:0;font-size:17px;font-weight:normal;}.impl-items code,.impl code,.methods code{flex-grow:1;}.impl-items h4,h4.impl,h3.impl,.methods h3{display:flex;flex-basis:100%;font-size:16px;margin-bottom:12px;justify-content:space-between;}.variants_table{width:100%;}.variants_table tbody tr td:first-child{width:1%;}td.summary-column{width:100%;}.summary{padding-right:0px;}pre.rust .question-mark{font-weight:bold;}a.test-arrow{display:inline-block;position:absolute;padding:5px 10px 5px 10px;border-radius:5px;font-size:130%;top:5px;right:5px;z-index:1;}a.test-arrow:hover{text-decoration:none;}.section-header:hover a:before{position:absolute;left:-25px;padding-right:10px;content:'\2002\00a7\2002';}.section-header:hover a{text-decoration:none;}.section-header a{color:inherit;}.collapse-toggle{font-weight:300;position:absolute;left:-23px;top:0;}h3>.collapse-toggle,h4>.collapse-toggle{font-size:0.8em;top:5px;}.toggle-wrapper>.collapse-toggle{left:-24px;margin-top:0px;}.toggle-wrapper{position:relative;margin-top:0;}.toggle-wrapper.collapsed{height:25px;transition:height .2s;margin-bottom:.6em;}.collapse-toggle>.inner{display:inline-block;width:1.2ch;text-align:center;}.collapse-toggle.hidden-default{position:relative;margin-left:20px;}.since+.srclink{display:table-cell;padding-left:10px;}.item-spacer{width:100%;height:12px;}.out-of-band>span.since{position:initial;font-size:20px;margin-right:5px;}.toggle-wrapper>.collapse-toggle{left:0;}.variant+.toggle-wrapper+.docblock>p{margin-top:5px;}.sub-variant,.sub-variant>h3{margin-top:1px !important;}#main>.sub-variant>h3{font-size:15px;margin-left:25px;margin-bottom:5px;}.sub-variant>div{margin-left:20px;margin-bottom:10px;}.sub-variant>div>span{display:block;position:relative;}.toggle-label{display:inline-block;margin-left:4px;margin-top:3px;}.enum>.toggle-wrapper+.docblock,.struct>.toggle-wrapper+.docblock{margin-left:30px;margin-bottom:20px;margin-top:5px;}.docblock>.section-header:first-child{margin-left:15px;margin-top:0;}.docblock>.section-header:first-child:hover>a:before{left:-10px;}.enum>.collapsed,.struct>.collapsed{margin-bottom:25px;}#main>.variant,#main>.structfield{display:block;}.attributes{display:block;margin-top:0px !important;margin-right:0px;margin-bottom:0px !important;margin-left:30px;}.toggle-attributes.collapsed{margin-bottom:0;}.impl-items>.toggle-attributes{margin-left:20px;}.impl-items .attributes{font-weight:500;}:target>code{opacity:1;}.information{position:absolute;left:-25px;margin-top:7px;z-index:1;}.tooltip{position:relative;display:inline-block;cursor:pointer;}.tooltip::after{display:none;text-align:center;padding:5px 3px 3px 3px;border-radius:6px;margin-left:5px;font-size:16px;}.tooltip.ignore::after{content:"This example is not tested";}.tooltip.compile_fail::after{content:"This example deliberately fails to compile";}.tooltip.should_panic::after{content:"This example panics";}.tooltip.edition::after{content:"This code runs with edition " attr(data-edition);}.tooltip::before{content:" ";position:absolute;top:50%;left:16px;margin-top:-5px;border-width:5px;border-style:solid;display:none;}.tooltip:hover::before,.tooltip:hover::after{display:inline;}.tooltip.compile_fail,.tooltip.should_panic,.tooltip.ignore{font-weight:bold;font-size:20px;}.notable-traits-tooltip{display:inline-block;cursor:pointer;}.notable-traits:hover .notable-traits-tooltiptext,.notable-traits .notable-traits-tooltiptext.force-tooltip{display:inline-block;}.notable-traits .notable-traits-tooltiptext{display:none;padding:5px 3px 3px 3px;border-radius:6px;margin-left:5px;z-index:10;font-size:16px;cursor:default;position:absolute;border:1px solid;}.notable-traits-tooltip::after{content:"\00a0\00a0\00a0";}.notable-traits .notable,.notable-traits .docblock{margin:0;}.notable-traits .docblock code.content{margin:0;padding:0;font-size:20px;}pre.rust.rust-example-rendered{position:relative;}pre.rust{tab-size:4;-moz-tab-size:4;}.search-failed{text-align:center;margin-top:20px;}.search-failed>ul{text-align:left;max-width:570px;margin-left:auto;margin-right:auto;}#titles{height:35px;}#titles>button{float:left;width:33.3%;text-align:center;font-size:18px;cursor:pointer;border:0;border-top:2px solid;}#titles>button:not(:last-child){margin-right:1px;width:calc(33.3% - 1px);}#titles>button>div.count{display:inline-block;font-size:16px;}.notable-traits{cursor:pointer;z-index:2;margin-left:5px;}h4>.notable-traits{position:absolute;left:-44px;top:2px;}#all-types{text-align:center;border:1px solid;margin:0 10px;margin-bottom:10px;display:block;border-radius:7px;}#all-types>p{margin:5px 0;}#sidebar-toggle{position:fixed;top:30px;left:300px;z-index:10;padding:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;cursor:pointer;font-weight:bold;transition:left .5s;font-size:1.2em;border:1px solid;border-left:0;}#source-sidebar{position:fixed;top:0;bottom:0;left:0;width:300px;z-index:1;overflow:auto;transition:left .5s;border-right:1px solid;}#source-sidebar>.title{font-size:1.5em;text-align:center;border-bottom:1px solid;margin-bottom:6px;}.theme-picker{position:absolute;left:211px;top:19px;}.theme-picker button{outline:none;}#settings-menu,.help-button{position:absolute;top:10px;}#settings-menu{right:0;outline:none;}.help-button{right:30px;font-family:"Fira Sans",sans-serif;text-align:center;font-size:17px;}#theme-picker,#settings-menu,.help-button{padding:4px;width:27px;height:29px;border:1px solid;border-radius:3px;cursor:pointer;}#theme-choices{display:none;position:absolute;left:0;top:28px;border:1px solid;border-radius:3px;z-index:1;cursor:pointer;}#theme-choices>button{border:none;width:100%;padding:4px 8px;text-align:center;background:rgba(0,0,0,0);}#theme-choices>button:not(:first-child){border-top:1px solid;}@media (min-width:701px){.information:first-child>.tooltip{margin-top:16px;}}@media (max-width:700px){body{padding-top:0px;}.rustdoc>.sidebar{height:45px;min-height:40px;margin:0;margin-left:-15px;padding:0 15px;position:static;z-index:11;}.sidebar>.location{float:right;margin:0px;margin-top:2px;padding:3px 10px 1px 10px;min-height:39px;background:inherit;text-align:left;font-size:24px;}.sidebar .location:empty{padding:0;}.sidebar .logo-container{width:35px;height:35px;margin-top:5px;margin-bottom:5px;float:left;margin-left:50px;}.sidebar .logo-container>img{max-width:35px;max-height:35px;}.sidebar-menu{position:fixed;z-index:10;font-size:2rem;cursor:pointer;width:45px;left:0;text-align:center;display:block;border-bottom:1px solid;border-right:1px solid;height:45px;}.rustdoc.source>.sidebar>.sidebar-menu{display:none;}.sidebar-elems{position:fixed;z-index:1;left:0;top:45px;bottom:0;overflow-y:auto;border-right:1px solid;display:none;}.sidebar>.block.version{border-bottom:none;margin-top:12px;}nav.sub{width:calc(100% - 32px);float:right;}.content{margin-left:0px;}#main{margin-top:45px;padding:0;}.content .in-band{width:100%;}.content h4>.out-of-band{position:inherit;}.toggle-wrapper>.collapse-toggle{left:0px;}.toggle-wrapper{height:1.5em;}#search{margin-left:0;}.content .impl-items .method,.content .impl-items>.type,.impl-items>.associatedconstant{display:flex;}.anchor{display:none !important;}h1.fqn{overflow:initial;}.theme-picker{left:10px;top:54px;z-index:1;}h4>.notable-traits{position:absolute;left:-22px;top:24px;}#titles>button>div.count{float:left;width:100%;}#titles{height:50px;}.sidebar.mobile{position:fixed;width:100%;margin-left:0;background-color:rgba(0,0,0,0);height:100%;}.sidebar{width:calc(100% + 30px);}.show-it{display:block;width:246px;}.show-it>.block.items{margin:8px 0;}.show-it>.block.items>ul{margin:0;}.show-it>.block.items>ul>li{text-align:center;margin:2px 0;}.show-it>.block.items>ul>li>a{font-size:21px;}#sidebar-filler{position:fixed;left:45px;width:calc(100% - 45px);top:0;height:45px;z-index:-1;border-bottom:1px solid;}.collapse-toggle{left:-20px;}.impl>.collapse-toggle{left:-10px;}#all-types{margin:10px;}#sidebar-toggle{top:100px;width:30px;font-size:1.5rem;text-align:center;padding:0;}#source-sidebar{z-index:11;}#main>.line-numbers{margin-top:0;}.notable-traits .notable-traits-tooltiptext{left:0;top:100%;}.help-button{display:none;}.search-container>div{width:calc(100% - 32px);}}@media print{nav.sub,.content .out-of-band,.collapse-toggle{display:none;}}@media (max-width:416px){#titles,#titles>button{height:73px;}#main{margin-top:100px;}#main>table:not(.table-display) td{word-break:break-word;width:50%;}.search-container>div{display:block;width:calc(100% - 37px);}#crate-search{width:100%;border-radius:4px;border:0;}#crate-search+.search-input{width:calc(100% + 71px);margin-left:-36px;}#theme-picker,#settings-menu{padding:5px;width:31px;height:31px;}#theme-picker{margin-top:-2px;}#settings-menu{top:7px;}}h3.notable{margin:0;margin-bottom:13px;font-size:19px;}kbd{display:inline-block;padding:3px 5px;font:15px monospace;line-height:10px;vertical-align:middle;border:solid 1px;border-radius:3px;box-shadow:inset 0 -1px 0;cursor:default;}.hidden-by-impl-hider,.hidden-by-usual-hider{display:none !important;}#implementations-list>h3>span.in-band{width:100%;}.table-display{width:100%;border:0;border-collapse:collapse;border-spacing:0;font-size:16px;}.table-display tr td:first-child{padding-right:0;}.table-display tr td:last-child{float:right;}.table-display .out-of-band{position:relative;font-size:19px;display:block;}#implementors-list>.impl-items .table-display .out-of-band{font-size:17px;}.table-display td:hover .anchor{display:block;top:2px;left:-5px;}#main>ul{padding-left:10px;}#main>ul>li{list-style:none;}.non-exhaustive{margin-bottom:1em;}div.children{padding-left:27px;display:none;}div.name{cursor:pointer;position:relative;margin-left:16px;}div.files>a{display:block;padding:0 3px;}div.files>a:hover,div.name:hover{background-color:#a14b4b;}div.name.expand+.children{display:block;}div.name::before{content:"\25B6";padding-left:4px;font-size:0.7em;position:absolute;left:-16px;top:4px;}div.name.expand::before{transform:rotate(90deg);left:-15px;top:2px;}.type-decl>pre>.toggle-wrapper.toggle-attributes.top-attr{margin-left:0 !important;}.type-decl>pre>.docblock.attributes.top-attr{margin-left:1.8em !important;}.type-decl>pre>.toggle-attributes{margin-left:2.2em;}.type-decl>pre>.docblock.attributes{margin-left:4em;}
\ No newline at end of file
diff --git a/search-index.js b/search-index.js
index dede347e..1e4d0a34 100644
--- a/search-index.js
+++ b/search-index.js
@@ -1,4 +1,4 @@
var searchIndex = JSON.parse('{\
-"proxy_wasm_experimental":{"doc":"","i":[[5,"set_log_level","proxy_wasm_experimental","",null,[[["loglevel",4]]]],[5,"set_root_context","","",null,[[]]],[5,"set_stream_context","","",null,[[]]],[5,"set_http_context","","",null,[[]]],[5,"proxy_abi_version_0_1_0","","",null,[[]]],[0,"error","","",null,null],[3,"HostCallError","proxy_wasm_experimental::error","An error to call a Host ABI function.",null,null],[3,"HostResponseError","","An error to parse the response from a Host ABI.",null,null],[6,"Error","","A boxed [`Error`].",null,null],[6,"Result","","A specialized [`Result`] type.",null,null],[11,"module","","",0,[[]]],[11,"function","","",0,[[]]],[11,"status","","",0,[[],["status",4]]],[11,"module","","",1,[[]]],[11,"function","","",1,[[]]],[0,"hostcalls","proxy_wasm_experimental","",null,null],[5,"log","proxy_wasm_experimental::hostcalls","Logs a message at a given log level.",null,[[["loglevel",4]],["result",6]]],[5,"get_current_time","","Returns current system time.",null,[[],[["systemtime",3],["result",6]]]],[5,"set_tick_period","","Sets the timer to a given period.",null,[[["duration",3]],["result",6]]],[5,"get_buffer","","Returns content from a given buffer.",null,[[["buffertype",4]],[["result",6],["option",4]]]],[5,"set_buffer","","Mutates content in a given buffer.",null,[[["buffertype",4]],["result",6]]],[5,"get_map","","Returns all key-value pairs from a given map.",null,[[["maptype",4]],[["result",6],["vec",3]]]],[5,"set_map","","Sets all key-value pairs in a given map.",null,[[["maptype",4]],["result",6]]],[5,"get_map_value","","Returns value of a given key from a given map.",null,[[["maptype",4]],[["result",6],["option",4]]]],[5,"set_map_value","","Sets / replaces / removes value of given key from a given…",null,[[["maptype",4],["option",4]],["result",6]]],[5,"add_map_value","","Adds a key-value pair to a given map.",null,[[["maptype",4]],["result",6]]],[5,"get_property","","Returns value of a property in the current context.",null,[[],[["result",6],["option",4]]]],[5,"set_property","","Sets property to a given value in the current context.",null,[[["option",4]],["result",6]]],[5,"get_shared_data","","Returns shared data by key.",null,[[],["result",6]]],[5,"set_shared_data","","Sets shared data by key.",null,[[["option",4],["option",4]],["result",6]]],[5,"register_shared_queue","","Registers a shared queue with a given name.",null,[[],["result",6]]],[5,"resolve_shared_queue","","Looks up for an existing shared queue with a given name.",null,[[],[["result",6],["option",4]]]],[5,"dequeue_shared_queue","","Returns data from the end of a given queue.",null,[[],[["result",6],["option",4]]]],[5,"enqueue_shared_queue","","Adds a value to the front of a given queue.",null,[[["option",4]],["result",6]]],[5,"continue_stream","","Resumes processing of a given stream, i.e. HTTP request or…",null,[[["streamtype",4]],["result",6]]],[5,"close_stream","","Terminates processing of a given stream, i.e. HTTP request…",null,[[["streamtype",4]],["result",6]]],[5,"send_http_response","","Sends HTTP response without forwarding request to the…",null,[[["option",4]],["result",6]]],[5,"dispatch_http_call","","Dispatches an HTTP call to a given upstream.",null,[[["duration",3],["option",4]],["result",6]]],[5,"set_effective_context","","Changes the effective context.",null,[[],["result",6]]],[5,"done","","Indicates to the host environment that Wasm VM side is…",null,[[],["result",6]]],[17,"NO_HEADERS","","Represents empty headers map.",null,null],[17,"NO_BODY","","Represents empty body.",null,null],[17,"NO_TRAILERS","","Represents empty trailers map.",null,null],[0,"traits","proxy_wasm_experimental","",null,null],[4,"ChildContext","proxy_wasm_experimental::traits","Represents a child context of the root context.",null,null],[13,"StreamContext","","",2,null],[13,"HttpContext","","",2,null],[8,"Context","","",null,null],[11,"get_current_time","","",3,[[],["systemtime",3]]],[11,"get_property","","",3,[[["vec",3]],[["option",4],["bytestring",3]]]],[11,"set_property","","",3,[[["option",4],["vec",3]]]],[11,"get_shared_data","","",3,[[]]],[11,"set_shared_data","","",3,[[["option",4],["option",4]],["result",6]]],[11,"register_shared_queue","","",3,[[]]],[11,"resolve_shared_queue","","",3,[[],["option",4]]],[11,"dequeue_shared_queue","","",3,[[],[["result",6],["option",4]]]],[11,"enqueue_shared_queue","","",3,[[["option",4]],["result",6]]],[11,"dispatch_http_call","","",3,[[["option",4],["duration",3],["vec",3]],["result",6]]],[11,"on_http_call_response","","",3,[[]]],[11,"get_http_call_response_headers","","",3,[[],["vec",3]]],[11,"get_http_call_response_body","","",3,[[],[["option",4],["bytestring",3]]]],[11,"get_http_call_response_trailers","","",3,[[],["vec",3]]],[11,"on_done","","",3,[[]]],[11,"done","","",3,[[]]],[8,"RootContext","","",null,null],[11,"on_vm_start","","",4,[[]]],[11,"on_configure","","",4,[[]]],[11,"set_tick_period","","",4,[[["duration",3]]]],[11,"on_tick","","",4,[[]]],[11,"on_queue_ready","","",4,[[]]],[11,"on_log","","",4,[[]]],[11,"on_create_child_context","","",4,[[],[["childcontext",4],["option",4]]]],[8,"StreamContext","","",null,null],[11,"on_new_connection","","",5,[[],["action",4]]],[11,"on_downstream_data","","",5,[[],["action",4]]],[11,"get_downstream_data","","",5,[[],[["option",4],["bytestring",3]]]],[11,"on_downstream_close","","",5,[[["peertype",4]]]],[11,"on_upstream_data","","",5,[[],["action",4]]],[11,"get_upstream_data","","",5,[[],[["option",4],["bytestring",3]]]],[11,"on_upstream_close","","",5,[[["peertype",4]]]],[11,"on_log","","",5,[[]]],[8,"HttpContext","","",null,null],[11,"on_http_request_headers","","",6,[[],["action",4]]],[11,"get_http_request_headers","","",6,[[],["vec",3]]],[11,"set_http_request_headers","","",6,[[["vec",3]]]],[11,"get_http_request_header","","",6,[[],[["option",4],["bytestring",3]]]],[11,"set_http_request_header","","",6,[[["option",4]]]],[11,"add_http_request_header","","",6,[[]]],[11,"on_http_request_body","","",6,[[],["action",4]]],[11,"get_http_request_body","","",6,[[],[["option",4],["bytestring",3]]]],[11,"on_http_request_trailers","","",6,[[],["action",4]]],[11,"get_http_request_trailers","","",6,[[],["vec",3]]],[11,"set_http_request_trailers","","",6,[[["vec",3]]]],[11,"get_http_request_trailer","","",6,[[],[["option",4],["bytestring",3]]]],[11,"set_http_request_trailer","","",6,[[["option",4]]]],[11,"add_http_request_trailer","","",6,[[]]],[11,"resume_http_request","","",6,[[]]],[11,"on_http_response_headers","","",6,[[],["action",4]]],[11,"get_http_response_headers","","",6,[[],["vec",3]]],[11,"set_http_response_headers","","",6,[[["vec",3]]]],[11,"get_http_response_header","","",6,[[],[["option",4],["bytestring",3]]]],[11,"set_http_response_header","","",6,[[["option",4]]]],[11,"add_http_response_header","","",6,[[]]],[11,"on_http_response_body","","",6,[[],["action",4]]],[11,"get_http_response_body","","",6,[[],[["option",4],["bytestring",3]]]],[11,"on_http_response_trailers","","",6,[[],["action",4]]],[11,"get_http_response_trailers","","",6,[[],["vec",3]]],[11,"set_http_response_trailers","","",6,[[["vec",3]]]],[11,"get_http_response_trailer","","",6,[[],[["option",4],["bytestring",3]]]],[11,"set_http_response_trailer","","",6,[[["option",4]]]],[11,"add_http_response_trailer","","",6,[[]]],[11,"resume_http_response","","",6,[[]]],[11,"send_http_response","","",6,[[["option",4],["vec",3]]]],[11,"on_log","","",6,[[]]],[0,"types","proxy_wasm_experimental","",null,null],[3,"ByteString","proxy_wasm_experimental::types","Represents a string value that is not necessarily UTF-8…",null,null],[4,"LogLevel","","",null,null],[13,"Trace","","",7,null],[13,"Debug","","",7,null],[13,"Info","","",7,null],[13,"Warn","","",7,null],[13,"Error","","",7,null],[13,"Critical","","",7,null],[4,"Action","","",null,null],[13,"Continue","","",8,null],[13,"Pause","","",8,null],[4,"Status","","",null,null],[13,"Ok","","",9,null],[13,"NotFound","","",9,null],[13,"BadArgument","","",9,null],[13,"Empty","","",9,null],[13,"CasMismatch","","",9,null],[13,"InternalFailure","","",9,null],[4,"BufferType","","",null,null],[13,"HttpRequestBody","","",10,null],[13,"HttpResponseBody","","",10,null],[13,"DownstreamData","","",10,null],[13,"UpstreamData","","",10,null],[13,"HttpCallResponseBody","","",10,null],[13,"GrpcReceiveBuffer","","",10,null],[13,"VmConfiguration","","",10,null],[13,"PluginConfiguration","","",10,null],[13,"CallData","","",10,null],[4,"MapType","","",null,null],[13,"HttpRequestHeaders","","",11,null],[13,"HttpRequestTrailers","","",11,null],[13,"HttpResponseHeaders","","",11,null],[13,"HttpResponseTrailers","","",11,null],[13,"GrpcReceiveInitialMetadata","","",11,null],[13,"GrpcReceiveTrailingMetadata","","",11,null],[13,"HttpCallResponseHeaders","","",11,null],[13,"HttpCallResponseTrailers","","",11,null],[4,"PeerType","","",null,null],[13,"Unknown","","",12,null],[13,"Local","","",12,null],[13,"Remote","","",12,null],[4,"StreamType","","",null,null],[13,"Request","","",13,null],[13,"Response","","",13,null],[6,"NewRootContext","","",null,null],[6,"NewStreamContext","","",null,null],[6,"NewHttpContext","","",null,null],[11,"new","","",14,[[]]],[11,"is_empty","","",14,[[]]],[11,"len","","",14,[[]]],[11,"as_bytes","","",14,[[]]],[11,"into_bytes","","",14,[[],["vec",3]]],[11,"into_string","","",14,[[],[["fromutf8error",3],["string",3],["result",4]]]],[11,"from","proxy_wasm_experimental::error","",0,[[]]],[11,"into","","",0,[[]]],[11,"to_string","","",0,[[],["string",3]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"from","","",1,[[]]],[11,"into","","",1,[[]]],[11,"to_string","","",1,[[],["string",3]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"from","proxy_wasm_experimental::traits","",2,[[]]],[11,"into","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"from","proxy_wasm_experimental::types","",14,[[]]],[11,"into","","",14,[[]]],[11,"to_owned","","",14,[[]]],[11,"clone_into","","",14,[[]]],[11,"to_string","","",14,[[],["string",3]]],[11,"try_from","","",14,[[],["result",4]]],[11,"try_into","","",14,[[],["result",4]]],[11,"borrow","","",14,[[]]],[11,"borrow_mut","","",14,[[]]],[11,"type_id","","",14,[[],["typeid",3]]],[11,"from","","",7,[[]]],[11,"into","","",7,[[]]],[11,"to_owned","","",7,[[]]],[11,"clone_into","","",7,[[]]],[11,"try_from","","",7,[[],["result",4]]],[11,"try_into","","",7,[[],["result",4]]],[11,"borrow","","",7,[[]]],[11,"borrow_mut","","",7,[[]]],[11,"type_id","","",7,[[],["typeid",3]]],[11,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"to_owned","","",8,[[]]],[11,"clone_into","","",8,[[]]],[11,"try_from","","",8,[[],["result",4]]],[11,"try_into","","",8,[[],["result",4]]],[11,"borrow","","",8,[[]]],[11,"borrow_mut","","",8,[[]]],[11,"type_id","","",8,[[],["typeid",3]]],[11,"from","","",9,[[]]],[11,"into","","",9,[[]]],[11,"to_owned","","",9,[[]]],[11,"clone_into","","",9,[[]]],[11,"try_from","","",9,[[],["result",4]]],[11,"try_into","","",9,[[],["result",4]]],[11,"borrow","","",9,[[]]],[11,"borrow_mut","","",9,[[]]],[11,"type_id","","",9,[[],["typeid",3]]],[11,"from","","",10,[[]]],[11,"into","","",10,[[]]],[11,"to_owned","","",10,[[]]],[11,"clone_into","","",10,[[]]],[11,"try_from","","",10,[[],["result",4]]],[11,"try_into","","",10,[[],["result",4]]],[11,"borrow","","",10,[[]]],[11,"borrow_mut","","",10,[[]]],[11,"type_id","","",10,[[],["typeid",3]]],[11,"from","","",11,[[]]],[11,"into","","",11,[[]]],[11,"to_owned","","",11,[[]]],[11,"clone_into","","",11,[[]]],[11,"try_from","","",11,[[],["result",4]]],[11,"try_into","","",11,[[],["result",4]]],[11,"borrow","","",11,[[]]],[11,"borrow_mut","","",11,[[]]],[11,"type_id","","",11,[[],["typeid",3]]],[11,"from","","",12,[[]]],[11,"into","","",12,[[]]],[11,"to_owned","","",12,[[]]],[11,"clone_into","","",12,[[]]],[11,"try_from","","",12,[[],["result",4]]],[11,"try_into","","",12,[[],["result",4]]],[11,"borrow","","",12,[[]]],[11,"borrow_mut","","",12,[[]]],[11,"type_id","","",12,[[],["typeid",3]]],[11,"from","","",13,[[]]],[11,"into","","",13,[[]]],[11,"to_owned","","",13,[[]]],[11,"clone_into","","",13,[[]]],[11,"try_from","","",13,[[],["result",4]]],[11,"try_into","","",13,[[],["result",4]]],[11,"borrow","","",13,[[]]],[11,"borrow_mut","","",13,[[]]],[11,"type_id","","",13,[[],["typeid",3]]],[11,"as_mut","","",14,[[]]],[11,"as_ref","","",14,[[]]],[11,"from","","",14,[[["vec",3]]]],[11,"from","","",14,[[]]],[11,"from","","",14,[[["string",3]]]],[11,"from","","",14,[[]]],[11,"from","","",14,[[["bytestring",3]]]],[11,"clone","","",7,[[],["loglevel",4]]],[11,"clone","","",8,[[],["action",4]]],[11,"clone","","",9,[[],["status",4]]],[11,"clone","","",10,[[],["buffertype",4]]],[11,"clone","","",11,[[],["maptype",4]]],[11,"clone","","",12,[[],["peertype",4]]],[11,"clone","","",13,[[],["streamtype",4]]],[11,"clone","","",14,[[],["bytestring",3]]],[11,"default","","",14,[[],["bytestring",3]]],[11,"eq","","",7,[[["loglevel",4]]]],[11,"eq","","",8,[[["action",4]]]],[11,"eq","","",9,[[["status",4]]]],[11,"eq","","",10,[[["buffertype",4]]]],[11,"eq","","",11,[[["maptype",4]]]],[11,"eq","","",12,[[["peertype",4]]]],[11,"eq","","",13,[[["streamtype",4]]]],[11,"eq","","",14,[[["bytestring",3]]]],[11,"eq","","",14,[[["string",3]]]],[11,"eq","","",14,[[["vec",3]]]],[11,"eq","","",14,[[]]],[11,"eq","","",14,[[]]],[11,"eq","","",14,[[]]],[11,"eq","","",14,[[]]],[11,"deref","","",14,[[],["bytestr",3]]],[11,"deref_mut","","",14,[[],["bytestr",3]]],[11,"fmt","proxy_wasm_experimental::error","",0,[[["formatter",3]],["result",6]]],[11,"fmt","","",1,[[["formatter",3]],["result",6]]],[11,"fmt","proxy_wasm_experimental::types","",7,[[["formatter",3]],["result",6]]],[11,"fmt","","",8,[[["formatter",3]],["result",6]]],[11,"fmt","","",9,[[["formatter",3]],["result",6]]],[11,"fmt","","",10,[[["formatter",3]],["result",6]]],[11,"fmt","","",11,[[["formatter",3]],["result",6]]],[11,"fmt","","",12,[[["formatter",3]],["result",6]]],[11,"fmt","","",13,[[["formatter",3]],["result",6]]],[11,"fmt","","",14,[[["formatter",3]],["result",6]]],[11,"fmt","proxy_wasm_experimental::error","",0,[[["formatter",3]],["result",6]]],[11,"fmt","","",1,[[["formatter",3]],["result",6]]],[11,"fmt","proxy_wasm_experimental::types","",14,[[["formatter",3]],["result",6]]],[11,"hash","","",7,[[]]],[11,"hash","","",8,[[]]],[11,"hash","","",9,[[]]],[11,"hash","","",10,[[]]],[11,"hash","","",11,[[]]],[11,"hash","","",12,[[]]],[11,"hash","","",13,[[]]],[11,"hash","","",14,[[]]],[11,"source","proxy_wasm_experimental::error","",1,[[],[["error",8],["option",4]]]]],"p":[[3,"HostCallError"],[3,"HostResponseError"],[4,"ChildContext"],[8,"Context"],[8,"RootContext"],[8,"StreamContext"],[8,"HttpContext"],[4,"LogLevel"],[4,"Action"],[4,"Status"],[4,"BufferType"],[4,"MapType"],[4,"PeerType"],[4,"StreamType"],[3,"ByteString"]]}\
+"proxy_wasm_experimental":{"doc":"","i":[[0,"error","proxy_wasm_experimental","",null,null],[6,"Error","proxy_wasm_experimental::error","A boxed Error.",null,null],[6,"Result","","A specialized Result type.",null,null],[3,"HostCallError","","An error to call a Host ABI function.",null,null],[11,"module","","",0,[[]]],[11,"function","","",0,[[]]],[11,"status","","",0,[[],["status",4]]],[3,"HostResponseError","","An error to parse the response from a Host ABI.",null,null],[11,"module","","",1,[[]]],[11,"function","","",1,[[]]],[0,"hostcalls","proxy_wasm_experimental","",null,null],[17,"NO_HEADERS","proxy_wasm_experimental::hostcalls","Represents empty headers map.",null,null],[17,"NO_BODY","","Represents empty body.",null,null],[17,"NO_TRAILERS","","Represents empty trailers map.",null,null],[5,"log","","Logs a message at a given log level.",null,[[["loglevel",4]],["result",6]]],[5,"get_current_time","","Returns current system time.",null,[[],[["systemtime",3],["result",6]]]],[5,"set_tick_period","","Sets the timer to a given period.",null,[[["duration",3]],["result",6]]],[5,"get_buffer","","Returns content from a given buffer.",null,[[["buffertype",4]],[["option",4],["result",6]]]],[5,"set_buffer","","Mutates content in a given buffer.",null,[[["buffertype",4]],["result",6]]],[5,"get_map","","Returns all key-value pairs from a given map.",null,[[["maptype",4]],[["result",6],["vec",3]]]],[5,"set_map","","Sets all key-value pairs in a given map.",null,[[["maptype",4]],["result",6]]],[5,"get_map_value","","Returns value of a given key from a given map.",null,[[["maptype",4]],[["option",4],["result",6]]]],[5,"set_map_value","","Sets / replaces / removes value of given key from a given …",null,[[["option",4],["maptype",4]],["result",6]]],[5,"add_map_value","","Adds a key-value pair to a given map.",null,[[["maptype",4]],["result",6]]],[5,"get_property","","Returns value of a property in the current context.",null,[[],[["option",4],["result",6]]]],[5,"set_property","","Sets property to a given value in the current context.",null,[[["option",4]],["result",6]]],[5,"get_shared_data","","Returns shared data by key.",null,[[],["result",6]]],[5,"set_shared_data","","Sets shared data by key.",null,[[["option",4],["option",4]],["result",6]]],[5,"register_shared_queue","","Registers a shared queue with a given name.",null,[[],["result",6]]],[5,"resolve_shared_queue","","Looks up for an existing shared queue with a given name.",null,[[],[["result",6],["option",4]]]],[5,"dequeue_shared_queue","","Returns data from the end of a given queue.",null,[[],[["option",4],["result",6]]]],[5,"enqueue_shared_queue","","Adds a value to the front of a given queue.",null,[[["option",4]],["result",6]]],[5,"continue_stream","","Resumes processing of a given stream, i.e. HTTP request …",null,[[["streamtype",4]],["result",6]]],[5,"close_stream","","Terminates processing of a given stream, i.e. HTTP …",null,[[["streamtype",4]],["result",6]]],[5,"send_http_response","","Sends HTTP response without forwarding request to the …",null,[[["option",4]],["result",6]]],[5,"dispatch_http_call","","Dispatches an HTTP call to a given upstream.",null,[[["duration",3],["option",4]],["result",6]]],[5,"set_effective_context","","Changes the effective context.",null,[[],["result",6]]],[5,"done","","Indicates to the host environment that Wasm VM side is …",null,[[],["result",6]]],[5,"define_metric","","",null,[[["metrictype",4]],["result",6]]],[5,"get_metric","","",null,[[],["result",6]]],[5,"record_metric","","",null,[[],["result",6]]],[5,"increment_metric","","",null,[[],["result",6]]],[0,"traits","proxy_wasm_experimental","",null,null],[8,"Context","proxy_wasm_experimental::traits","",null,null],[11,"get_current_time","","",2,[[],["systemtime",3]]],[11,"get_property","","",2,[[["vec",3]],[["option",4],["bytestring",3]]]],[11,"set_property","","",2,[[["option",4],["vec",3]]]],[11,"get_shared_data","","",2,[[]]],[11,"set_shared_data","","",2,[[["option",4],["option",4]],["result",6]]],[11,"register_shared_queue","","",2,[[]]],[11,"resolve_shared_queue","","",2,[[],["option",4]]],[11,"dequeue_shared_queue","","",2,[[],[["option",4],["result",6]]]],[11,"enqueue_shared_queue","","",2,[[["option",4]],["result",6]]],[11,"dispatch_http_call","","",2,[[["vec",3],["option",4],["duration",3]],["result",6]]],[11,"on_http_call_response","","",2,[[]]],[11,"get_http_call_response_headers","","",2,[[],["vec",3]]],[11,"get_http_call_response_body","","",2,[[],[["option",4],["bytestring",3]]]],[11,"get_http_call_response_trailers","","",2,[[],["vec",3]]],[11,"on_done","","",2,[[]]],[11,"done","","",2,[[]]],[8,"RootContext","","",null,null],[11,"on_vm_start","","",3,[[]]],[11,"on_configure","","",3,[[]]],[11,"set_tick_period","","",3,[[["duration",3]]]],[11,"on_tick","","",3,[[]]],[11,"on_queue_ready","","",3,[[]]],[11,"on_log","","",3,[[]]],[11,"create_http_context","","",3,[[],[["option",4],["box",3]]]],[11,"create_stream_context","","",3,[[],[["box",3],["option",4]]]],[11,"get_type","","",3,[[],[["option",4],["contexttype",4]]]],[8,"StreamContext","","",null,null],[11,"on_new_connection","","",4,[[],["action",4]]],[11,"on_downstream_data","","",4,[[],["action",4]]],[11,"get_downstream_data","","",4,[[],[["option",4],["bytestring",3]]]],[11,"set_downstream_data","","",4,[[]]],[11,"on_downstream_close","","",4,[[["peertype",4]]]],[11,"on_upstream_data","","",4,[[],["action",4]]],[11,"get_upstream_data","","",4,[[],[["option",4],["bytestring",3]]]],[11,"set_upstream_data","","",4,[[]]],[11,"on_upstream_close","","",4,[[["peertype",4]]]],[11,"on_log","","",4,[[]]],[8,"HttpContext","","",null,null],[11,"on_http_request_headers","","",5,[[],["action",4]]],[11,"get_http_request_headers","","",5,[[],["vec",3]]],[11,"set_http_request_headers","","",5,[[["vec",3]]]],[11,"get_http_request_header","","",5,[[],[["option",4],["bytestring",3]]]],[11,"set_http_request_header","","",5,[[["option",4]]]],[11,"add_http_request_header","","",5,[[]]],[11,"on_http_request_body","","",5,[[],["action",4]]],[11,"get_http_request_body","","",5,[[],[["option",4],["bytestring",3]]]],[11,"set_http_request_body","","",5,[[]]],[11,"on_http_request_trailers","","",5,[[],["action",4]]],[11,"get_http_request_trailers","","",5,[[],["vec",3]]],[11,"set_http_request_trailers","","",5,[[["vec",3]]]],[11,"get_http_request_trailer","","",5,[[],[["option",4],["bytestring",3]]]],[11,"set_http_request_trailer","","",5,[[["option",4]]]],[11,"add_http_request_trailer","","",5,[[]]],[11,"resume_http_request","","",5,[[]]],[11,"on_http_response_headers","","",5,[[],["action",4]]],[11,"get_http_response_headers","","",5,[[],["vec",3]]],[11,"set_http_response_headers","","",5,[[["vec",3]]]],[11,"get_http_response_header","","",5,[[],[["option",4],["bytestring",3]]]],[11,"set_http_response_header","","",5,[[["option",4]]]],[11,"add_http_response_header","","",5,[[]]],[11,"on_http_response_body","","",5,[[],["action",4]]],[11,"get_http_response_body","","",5,[[],[["option",4],["bytestring",3]]]],[11,"set_http_response_body","","",5,[[]]],[11,"on_http_response_trailers","","",5,[[],["action",4]]],[11,"get_http_response_trailers","","",5,[[],["vec",3]]],[11,"set_http_response_trailers","","",5,[[["vec",3]]]],[11,"get_http_response_trailer","","",5,[[],[["option",4],["bytestring",3]]]],[11,"set_http_response_trailer","","",5,[[["option",4]]]],[11,"add_http_response_trailer","","",5,[[]]],[11,"resume_http_response","","",5,[[]]],[11,"send_http_response","","",5,[[["vec",3],["option",4]]]],[11,"on_log","","",5,[[]]],[0,"types","proxy_wasm_experimental","",null,null],[3,"ByteString","proxy_wasm_experimental::types","Represents a string value that is not necessarily UTF-8 …",null,null],[6,"NewRootContext","","",null,null],[6,"NewStreamContext","","",null,null],[6,"NewHttpContext","","",null,null],[4,"LogLevel","","",null,null],[13,"Trace","","",6,null],[13,"Debug","","",6,null],[13,"Info","","",6,null],[13,"Warn","","",6,null],[13,"Error","","",6,null],[13,"Critical","","",6,null],[4,"Action","","",null,null],[13,"Continue","","",7,null],[13,"Pause","","",7,null],[4,"Status","","",null,null],[13,"Ok","","",8,null],[13,"NotFound","","",8,null],[13,"BadArgument","","",8,null],[13,"Empty","","",8,null],[13,"CasMismatch","","",8,null],[13,"InternalFailure","","",8,null],[4,"ContextType","","",null,null],[13,"HttpContext","","",9,null],[13,"StreamContext","","",9,null],[4,"BufferType","","",null,null],[13,"HttpRequestBody","","",10,null],[13,"HttpResponseBody","","",10,null],[13,"DownstreamData","","",10,null],[13,"UpstreamData","","",10,null],[13,"HttpCallResponseBody","","",10,null],[13,"GrpcReceiveBuffer","","",10,null],[13,"VmConfiguration","","",10,null],[13,"PluginConfiguration","","",10,null],[13,"CallData","","",10,null],[4,"MapType","","",null,null],[13,"HttpRequestHeaders","","",11,null],[13,"HttpRequestTrailers","","",11,null],[13,"HttpResponseHeaders","","",11,null],[13,"HttpResponseTrailers","","",11,null],[13,"GrpcReceiveInitialMetadata","","",11,null],[13,"GrpcReceiveTrailingMetadata","","",11,null],[13,"HttpCallResponseHeaders","","",11,null],[13,"HttpCallResponseTrailers","","",11,null],[4,"PeerType","","",null,null],[13,"Unknown","","",12,null],[13,"Local","","",12,null],[13,"Remote","","",12,null],[4,"StreamType","","",null,null],[13,"Request","","",13,null],[13,"Response","","",13,null],[4,"MetricType","","",null,null],[13,"Counter","","",14,null],[13,"Gauge","","",14,null],[13,"Histogram","","",14,null],[11,"new","","",15,[[]]],[11,"is_empty","","",15,[[]]],[11,"len","","",15,[[]]],[11,"as_bytes","","",15,[[]]],[11,"into_bytes","","",15,[[],["vec",3]]],[11,"into_string","","",15,[[],[["string",3],["fromutf8error",3],["result",4]]]],[5,"set_log_level","proxy_wasm_experimental","",null,[[["loglevel",4]]]],[5,"set_root_context","","",null,[[]]],[5,"set_stream_context","","",null,[[]]],[5,"set_http_context","","",null,[[]]],[5,"proxy_abi_version_0_2_0","","",null,[[]]],[11,"from","proxy_wasm_experimental::error","",0,[[]]],[11,"into","","",0,[[]]],[11,"to_string","","",0,[[],["string",3]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"from","","",1,[[]]],[11,"into","","",1,[[]]],[11,"to_string","","",1,[[],["string",3]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"from","proxy_wasm_experimental::types","",15,[[]]],[11,"into","","",15,[[]]],[11,"to_owned","","",15,[[]]],[11,"clone_into","","",15,[[]]],[11,"to_string","","",15,[[],["string",3]]],[11,"borrow","","",15,[[]]],[11,"borrow_mut","","",15,[[]]],[11,"try_from","","",15,[[],["result",4]]],[11,"try_into","","",15,[[],["result",4]]],[11,"type_id","","",15,[[],["typeid",3]]],[11,"get_hash","","",15,[[]]],[11,"from","","",6,[[]]],[11,"into","","",6,[[]]],[11,"to_owned","","",6,[[]]],[11,"clone_into","","",6,[[]]],[11,"borrow","","",6,[[]]],[11,"borrow_mut","","",6,[[]]],[11,"try_from","","",6,[[],["result",4]]],[11,"try_into","","",6,[[],["result",4]]],[11,"type_id","","",6,[[],["typeid",3]]],[11,"get_hash","","",6,[[]]],[11,"from","","",7,[[]]],[11,"into","","",7,[[]]],[11,"to_owned","","",7,[[]]],[11,"clone_into","","",7,[[]]],[11,"borrow","","",7,[[]]],[11,"borrow_mut","","",7,[[]]],[11,"try_from","","",7,[[],["result",4]]],[11,"try_into","","",7,[[],["result",4]]],[11,"type_id","","",7,[[],["typeid",3]]],[11,"get_hash","","",7,[[]]],[11,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"to_owned","","",8,[[]]],[11,"clone_into","","",8,[[]]],[11,"borrow","","",8,[[]]],[11,"borrow_mut","","",8,[[]]],[11,"try_from","","",8,[[],["result",4]]],[11,"try_into","","",8,[[],["result",4]]],[11,"type_id","","",8,[[],["typeid",3]]],[11,"get_hash","","",8,[[]]],[11,"from","","",9,[[]]],[11,"into","","",9,[[]]],[11,"to_owned","","",9,[[]]],[11,"clone_into","","",9,[[]]],[11,"borrow","","",9,[[]]],[11,"borrow_mut","","",9,[[]]],[11,"try_from","","",9,[[],["result",4]]],[11,"try_into","","",9,[[],["result",4]]],[11,"type_id","","",9,[[],["typeid",3]]],[11,"get_hash","","",9,[[]]],[11,"from","","",10,[[]]],[11,"into","","",10,[[]]],[11,"to_owned","","",10,[[]]],[11,"clone_into","","",10,[[]]],[11,"borrow","","",10,[[]]],[11,"borrow_mut","","",10,[[]]],[11,"try_from","","",10,[[],["result",4]]],[11,"try_into","","",10,[[],["result",4]]],[11,"type_id","","",10,[[],["typeid",3]]],[11,"get_hash","","",10,[[]]],[11,"from","","",11,[[]]],[11,"into","","",11,[[]]],[11,"to_owned","","",11,[[]]],[11,"clone_into","","",11,[[]]],[11,"borrow","","",11,[[]]],[11,"borrow_mut","","",11,[[]]],[11,"try_from","","",11,[[],["result",4]]],[11,"try_into","","",11,[[],["result",4]]],[11,"type_id","","",11,[[],["typeid",3]]],[11,"get_hash","","",11,[[]]],[11,"from","","",12,[[]]],[11,"into","","",12,[[]]],[11,"to_owned","","",12,[[]]],[11,"clone_into","","",12,[[]]],[11,"borrow","","",12,[[]]],[11,"borrow_mut","","",12,[[]]],[11,"try_from","","",12,[[],["result",4]]],[11,"try_into","","",12,[[],["result",4]]],[11,"type_id","","",12,[[],["typeid",3]]],[11,"get_hash","","",12,[[]]],[11,"from","","",13,[[]]],[11,"into","","",13,[[]]],[11,"to_owned","","",13,[[]]],[11,"clone_into","","",13,[[]]],[11,"borrow","","",13,[[]]],[11,"borrow_mut","","",13,[[]]],[11,"try_from","","",13,[[],["result",4]]],[11,"try_into","","",13,[[],["result",4]]],[11,"type_id","","",13,[[],["typeid",3]]],[11,"get_hash","","",13,[[]]],[11,"from","","",14,[[]]],[11,"into","","",14,[[]]],[11,"to_owned","","",14,[[]]],[11,"clone_into","","",14,[[]]],[11,"borrow","","",14,[[]]],[11,"borrow_mut","","",14,[[]]],[11,"try_from","","",14,[[],["result",4]]],[11,"try_into","","",14,[[],["result",4]]],[11,"type_id","","",14,[[],["typeid",3]]],[11,"get_hash","","",14,[[]]],[11,"as_mut","","",15,[[]]],[11,"as_ref","","",15,[[]]],[11,"from","","",15,[[["vec",3]]]],[11,"from","","",15,[[]]],[11,"from","","",15,[[["string",3]]]],[11,"from","","",15,[[]]],[11,"from","","",15,[[["bytestring",3]]]],[11,"clone","","",6,[[],["loglevel",4]]],[11,"clone","","",7,[[],["action",4]]],[11,"clone","","",8,[[],["status",4]]],[11,"clone","","",9,[[],["contexttype",4]]],[11,"clone","","",10,[[],["buffertype",4]]],[11,"clone","","",11,[[],["maptype",4]]],[11,"clone","","",12,[[],["peertype",4]]],[11,"clone","","",13,[[],["streamtype",4]]],[11,"clone","","",14,[[],["metrictype",4]]],[11,"clone","","",15,[[],["bytestring",3]]],[11,"default","","",15,[[],["bytestring",3]]],[11,"eq","","",6,[[["loglevel",4]]]],[11,"eq","","",7,[[["action",4]]]],[11,"eq","","",8,[[["status",4]]]],[11,"eq","","",9,[[["contexttype",4]]]],[11,"eq","","",10,[[["buffertype",4]]]],[11,"eq","","",11,[[["maptype",4]]]],[11,"eq","","",12,[[["peertype",4]]]],[11,"eq","","",13,[[["streamtype",4]]]],[11,"eq","","",14,[[["metrictype",4]]]],[11,"eq","","",15,[[["bytestring",3]]]],[11,"eq","","",15,[[["string",3]]]],[11,"eq","","",15,[[["vec",3]]]],[11,"eq","","",15,[[]]],[11,"eq","","",15,[[]]],[11,"eq","","",15,[[]]],[11,"eq","","",15,[[]]],[11,"deref","","",15,[[],["bytestr",3]]],[11,"deref_mut","","",15,[[],["bytestr",3]]],[11,"fmt","proxy_wasm_experimental::error","",0,[[["formatter",3]],["result",6]]],[11,"fmt","","",1,[[["formatter",3]],["result",6]]],[11,"fmt","proxy_wasm_experimental::types","",6,[[["formatter",3]],["result",6]]],[11,"fmt","","",7,[[["formatter",3]],["result",6]]],[11,"fmt","","",8,[[["formatter",3]],["result",6]]],[11,"fmt","","",9,[[["formatter",3]],["result",6]]],[11,"fmt","","",10,[[["formatter",3]],["result",6]]],[11,"fmt","","",11,[[["formatter",3]],["result",6]]],[11,"fmt","","",12,[[["formatter",3]],["result",6]]],[11,"fmt","","",13,[[["formatter",3]],["result",6]]],[11,"fmt","","",14,[[["formatter",3]],["result",6]]],[11,"fmt","","",15,[[["formatter",3]],["result",6]]],[11,"fmt","proxy_wasm_experimental::error","",0,[[["formatter",3]],["result",6]]],[11,"fmt","","",1,[[["formatter",3]],["result",6]]],[11,"fmt","proxy_wasm_experimental::types","",15,[[["formatter",3]],["result",6]]],[11,"hash","","",6,[[]]],[11,"hash","","",7,[[]]],[11,"hash","","",8,[[]]],[11,"hash","","",9,[[]]],[11,"hash","","",10,[[]]],[11,"hash","","",11,[[]]],[11,"hash","","",12,[[]]],[11,"hash","","",13,[[]]],[11,"hash","","",14,[[]]],[11,"hash","","",15,[[]]],[11,"source","proxy_wasm_experimental::error","",1,[[],[["option",4],["error",8]]]]],"p":[[3,"HostCallError"],[3,"HostResponseError"],[8,"Context"],[8,"RootContext"],[8,"StreamContext"],[8,"HttpContext"],[4,"LogLevel"],[4,"Action"],[4,"Status"],[4,"ContextType"],[4,"BufferType"],[4,"MapType"],[4,"PeerType"],[4,"StreamType"],[4,"MetricType"],[3,"ByteString"]]}\
}');
addSearchOptions(searchIndex);initSearch(searchIndex);
\ No newline at end of file
diff --git a/settings.css b/settings.css
index 6ce76658..67098658 100644
--- a/settings.css
+++ b/settings.css
@@ -1 +1 @@
-.setting-line{padding:5px;position:relative;}.setting-line>div{max-width:calc(100% - 74px);display:inline-block;vertical-align:top;font-size:17px;padding-top:2px;}.setting-line>.title{font-size:19px;width:100%;max-width:none;border-bottom:1px solid;}.toggle{position:relative;display:inline-block;width:45px;height:27px;margin-right:20px;}.toggle input{display:none;}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.3s;transition:.3s;}.slider:before{position:absolute;content:"";height:19px;width:19px;left:4px;bottom:4px;background-color:white;-webkit-transition:.3s;transition:.3s;}input:checked+.slider{background-color:#2196F3;}input:focus+.slider{box-shadow:0 0 1px #2196F3;}input:checked+.slider:before{-webkit-transform:translateX(19px);-ms-transform:translateX(19px);transform:translateX(19px);}.setting-line>.sub-settings{padding-left:42px;width:100%;display:block;}
\ No newline at end of file
+.setting-line{padding:5px;position:relative;}.setting-line>div{display:inline-block;vertical-align:top;font-size:17px;padding-top:2px;}.setting-line>.title{font-size:19px;width:100%;max-width:none;border-bottom:1px solid;}.toggle{position:relative;display:inline-block;width:45px;height:27px;margin-right:20px;}.toggle input{opacity:0;position:absolute;}.select-wrapper{float:right;position:relative;height:27px;min-width:25%;}.select-wrapper select{appearance:none;-moz-appearance:none;-webkit-appearance:none;background:none;border:2px solid #ccc;padding-right:28px;width:100%;}.select-wrapper img{pointer-events:none;position:absolute;right:0;bottom:0;background:#ccc;height:100%;width:28px;padding:0px 4px;}.select-wrapper select option{color:initial;}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.3s;transition:.3s;}.slider:before{position:absolute;content:"";height:19px;width:19px;left:4px;bottom:4px;background-color:white;-webkit-transition:.3s;transition:.3s;}input:checked+.slider{background-color:#2196F3;}input:focus+.slider{box-shadow:0 0 0 2px #0a84ff,0 0 0 6px rgba(10,132,255,0.3);}input:checked+.slider:before{-webkit-transform:translateX(19px);-ms-transform:translateX(19px);transform:translateX(19px);}.setting-line>.sub-settings{padding-left:42px;width:100%;display:block;}
\ No newline at end of file
diff --git a/settings.html b/settings.html
index 51d864d8..057d8799 100644
--- a/settings.html
+++ b/settings.html
@@ -1,2 +1,6 @@
-Rustdoc settings
Rustdoc settings
Auto-hide item declarations
Auto-hide structs declaration
Auto-hide enums declaration
Auto-hide unions declaration
Auto-hide traits declaration
Auto-hide macros declaration
-
Auto-hide item attributes.
Auto-hide item methods' documentation
Auto-hide trait implementations documentation
Directly go to item in search if there is only one result
Show line numbers on code examples
Disable keyboard shortcuts
\ No newline at end of file
+Rustdoc settings
+
+
Rustdoc settings
Theme preferences
Use system theme
Preferred dark theme
Preferred light theme
+
Auto-hide item declarations
Auto-hide structs declaration
Auto-hide enums declaration
Auto-hide unions declaration
Auto-hide traits declaration
Auto-hide macros declaration
+
Auto-hide item attributes.
Auto-hide item methods' documentation
Auto-hide trait implementation documentation
Auto-hide implementors of a trait
Directly go to item in search if there is only one result
Show line numbers on code examples
Disable keyboard shortcuts
\ No newline at end of file
diff --git a/settings.js b/settings.js
index 99303090..b4d6fdcd 100644
--- a/settings.js
+++ b/settings.js
@@ -1 +1 @@
-(function(){function changeSetting(settingName,isEnabled){updateLocalStorage('rustdoc-'+settingName,isEnabled)}function getSettingValue(settingName){return getCurrentValue('rustdoc-'+settingName)}function setEvents(){var elems=document.getElementsByClassName("slider");if(!elems||elems.length===0){return}for(var i=0;i"){sidebar.style.left="";this.style.left="";child.innerText="<";updateLocalStorage("rustdoc-source-sidebar-show","true")}else{sidebar.style.left="-300px";this.style.left="0";child.innerText=">";updateLocalStorage("rustdoc-source-sidebar-show","false")}}function createSidebarToggle(){var sidebarToggle=document.createElement("div");sidebarToggle.id="sidebar-toggle";sidebarToggle.onclick=toggleSidebar;var inner1=document.createElement("div");inner1.style.position="relative";var inner2=document.createElement("div");inner2.style.paddingTop="3px";if(getCurrentValue("rustdoc-source-sidebar-show")==="true"){inner2.innerText="<"}else{inner2.innerText=">";sidebarToggle.style.left="0"}inner1.appendChild(inner2);sidebarToggle.appendChild(inner1);return sidebarToggle}function createSourceSidebar(){if(window.rootPath.endsWith("/")===false){window.rootPath+="/"}var main=document.getElementById("main");var sidebarToggle=createSidebarToggle();main.insertBefore(sidebarToggle,main.firstChild);var sidebar=document.createElement("div");sidebar.id="source-sidebar";if(getCurrentValue("rustdoc-source-sidebar-show")!=="true"){sidebar.style.left="-300px"}var currentFile=getCurrentFilePath();var hasFoundFile=false;var title=document.createElement("div");title.className="title";title.innerText="Files";sidebar.appendChild(title);Object.keys(sourcesIndex).forEach(function(key){sourcesIndex[key].name=key;hasFoundFile=createDirEntry(sourcesIndex[key],sidebar,"",currentFile,hasFoundFile)});main.insertBefore(sidebar,main.firstChild)}
\ No newline at end of file
+function getCurrentFilePath(){var parts=window.location.pathname.split("/");var rootPathParts=window.rootPath.split("/");for(var i=0;i"){sidebar.style.left="";this.style.left="";child.innerText="<";updateLocalStorage("rustdoc-source-sidebar-show","true")}else{sidebar.style.left="-300px";this.style.left="0";child.innerText=">";updateLocalStorage("rustdoc-source-sidebar-show","false")}}function createSidebarToggle(){var sidebarToggle=document.createElement("div");sidebarToggle.id="sidebar-toggle";sidebarToggle.onclick=toggleSidebar;var inner1=document.createElement("div");inner1.style.position="relative";var inner2=document.createElement("div");inner2.style.paddingTop="3px";if(getCurrentValue("rustdoc-source-sidebar-show")==="true"){inner2.innerText="<"}else{inner2.innerText=">";sidebarToggle.style.left="0"}inner1.appendChild(inner2);sidebarToggle.appendChild(inner1);return sidebarToggle}function createSourceSidebar(){if(window.rootPath.endsWith("/")===false){window.rootPath+="/"}var main=document.getElementById("main");var sidebarToggle=createSidebarToggle();main.insertBefore(sidebarToggle,main.firstChild);var sidebar=document.createElement("div");sidebar.id="source-sidebar";if(getCurrentValue("rustdoc-source-sidebar-show")!=="true"){sidebar.style.left="-300px"}var currentFile=getCurrentFilePath();var hasFoundFile=false;var title=document.createElement("div");title.className="title";title.innerText="Files";sidebar.appendChild(title);Object.keys(sourcesIndex).forEach(function(key){sourcesIndex[key].name=key;hasFoundFile=createDirEntry(sourcesIndex[key],sidebar,"",currentFile,hasFoundFile)});main.insertBefore(sidebar,main.firstChild);var selected_elem=sidebar.getElementsByClassName("selected")[0];if(typeof selected_elem!=="undefined"){selected_elem.focus()}}
\ No newline at end of file
diff --git a/src/proxy_wasm_experimental/allocator.rs.html b/src/proxy_wasm_experimental/allocator.rs.html
index e9b8785d..34adb510 100644
--- a/src/proxy_wasm_experimental/allocator.rs.html
+++ b/src/proxy_wasm_experimental/allocator.rs.html
@@ -1,4 +1,7 @@
-allocator.rs.html -- source
// Copyright 2020 Google LLC//
@@ -52,20 +47,12 @@
// See the License for the specific language governing permissions and// limitations under the License.
+#[cfg(feature="wee-alloc")]#[global_allocator]staticALLOC: wee_alloc::WeeAlloc=wee_alloc::WeeAlloc::INIT;
-// Apparently, Rust toolchain doesn't handle well exported name `malloc`
-// when this package is compiled to targets other than `wasm32-unknown-unknown`.
-// Specifically, linking issues have been observed with targets `wasm32-wasi`
-// and `x86_64-unknown-linux-gnu`, which is a blocker for unit testing.
-// Therefore, export name `malloc` only in the context of target `wasm32-unknown-unknown`.#[cfg_attr(
- all(
- target_arch="wasm32",
- target_vendor="unknown",
- target_os="unknown"
- ),
+ all(target_arch="wasm32", target_os="unknown"),
export_name="malloc"
)]#[no_mangle]
diff --git a/src/proxy_wasm_experimental/bytestring.rs.html b/src/proxy_wasm_experimental/bytestring.rs.html
index 234ac1fc..2212fdd2 100644
--- a/src/proxy_wasm_experimental/bytestring.rs.html
+++ b/src/proxy_wasm_experimental/bytestring.rs.html
@@ -1,4 +1,7 @@
-bytestring.rs.html -- source
1 2 3 4
@@ -66,7 +69,7 @@
// See the License for the specific language governing permissions and// limitations under the License.
-#![doc(html_root_url="https://docs.rs/proxy-wasm-experimental/0.0.7")]
+#![doc(html_root_url="https://docs.rs/proxy-wasm-experimental/0.0.8")]pubmoderror;
pubmodhostcalls;
@@ -104,6 +107,6 @@
}
#[no_mangle]
-pubextern"C"fnproxy_abi_version_0_1_0() {}
+pubextern"C"fnproxy_abi_version_0_2_0() {}
\ No newline at end of file
diff --git a/src/proxy_wasm_experimental/logger.rs.html b/src/proxy_wasm_experimental/logger.rs.html
index 351ad23e..8eb7b9dd 100644
--- a/src/proxy_wasm_experimental/logger.rs.html
+++ b/src/proxy_wasm_experimental/logger.rs.html
@@ -1,4 +1,7 @@
-logger.rs.html -- source