-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsearch-index.js
3 lines (3 loc) · 116 KB
/
search-index.js
1
2
3
var searchIndex = {};
searchIndex['webchat'] = {"items":[[0,"","webchat","",null,null],[5,"main","","",null,{"inputs":[],"output":null}],[0,"webpage","","",null,null],[5,"req_handler","webchat::webpage","",null,{"inputs":[{"name":"request"},{"name":"response"}],"output":null}],[5,"serve","","",null,{"inputs":[],"output":null}],[17,"HTTP_ADDR","","",null,null],[17,"HTML_DATA","","",null,null],[0,"chatserver","webchat","",null,null],[8,"Sender","webchat::chatserver","A trait for sending data frames and messages.",null,null],[10,"send_dataframe","","Sends a single data frame using this sender.",0,{"inputs":[{"name":"sender"},{"name":"d"}],"output":{"name":"result"}}],[11,"send_message","","Sends a single message using this sender.",0,{"inputs":[{"name":"sender"},{"name":"m"}],"output":{"name":"result"}}],[8,"Receiver","","A trait for receiving data frames and messages.",null,null],[10,"recv_dataframe","","Reads a single data frame from this receiver.",1,{"inputs":[{"name":"receiver"}],"output":{"name":"result"}}],[10,"recv_message_dataframes","","Returns the data frames that constitute one message.",1,{"inputs":[{"name":"receiver"}],"output":{"name":"result"}}],[11,"incoming_dataframes","","Returns an iterator over incoming data frames.",1,{"inputs":[{"name":"receiver"}],"output":{"name":"dataframeiterator"}}],[11,"recv_message","","Reads a single message from this receiver.",1,{"inputs":[{"name":"receiver"}],"output":{"name":"result"}}],[11,"incoming_messages","","Returns an iterator over incoming messages.",1,{"inputs":[{"name":"receiver"}],"output":{"name":"messageiterator"}}],[4,"ChatAction","","Represents a single, atomic action taken by a chat member.",null,null],[13,"Connect","","",2,null],[12,"addr","webchat::chatserver::ChatAction","",2,null],[13,"Disconnect","webchat::chatserver","",2,null],[12,"addr","webchat::chatserver::ChatAction","",2,null],[13,"Msg","webchat::chatserver","",2,null],[12,"user","webchat::chatserver::ChatAction","",2,null],[12,"text","","",2,null],[5,"start","webchat::chatserver","Spawn a WebSocket listener thread.",null,{"inputs":[],"output":null}],[5,"listen","","Create the relay MPSC (multi-producer/single-consumer) channel, spawn the\nrelay thread, then listen for WebSocket clients and spawn their threads.",null,{"inputs":[],"output":null}],[5,"relay_thread","","The relay thread handles all `ChatAction`s received on its MPSC channel\nby sending them out to all of the currently connected clients.",null,{"inputs":[{"name":"receiver"},{"name":"arc"}],"output":null}],[5,"client_thread","","Each client thread waits for input (or disconnects) from its respective clients\nand relays the appropriate messages via the relay MPSC channel.",null,{"inputs":[{"name":"result"},{"name":"sender"},{"name":"arc"}],"output":null}],[0,"ws","","",null,null],[11,"bind","websocket::server","Bind this Server to this socket",3,{"inputs":[{"name":"server"},{"name":"t"}],"output":{"name":"result"}}],[11,"bind_secure","","Bind this Server to this socket, utilising the given SslContext",3,{"inputs":[{"name":"server"},{"name":"t"},{"name":"sslcontext"}],"output":{"name":"result"}}],[11,"local_addr","","Get the socket address of this server",3,{"inputs":[{"name":"server"}],"output":{"name":"result"}}],[11,"try_clone","","Create a new independently owned handle to the underlying socket.",3,{"inputs":[{"name":"server"}],"output":{"name":"result"}}],[11,"accept","","Wait for and accept an incoming WebSocket connection, returning a WebSocketRequest",3,{"inputs":[{"name":"server"}],"output":{"name":"result"}}],[11,"next","websocket::ws::receiver","Get the next data frame from the receiver. Always returns `Some`.",4,{"inputs":[{"name":"dataframeiterator"}],"output":{"name":"option"}}],[11,"next","","Get the next message from the receiver. Always returns `Some`.",5,{"inputs":[{"name":"messageiterator"}],"output":{"name":"option"}}],[11,"hash","websocket::ws::util::header","",6,null],[11,"cmp","","",6,{"inputs":[{"name":"dataframeflags"},{"name":"dataframeflags"}],"output":{"name":"ordering"}}],[11,"partial_cmp","","",6,{"inputs":[{"name":"dataframeflags"},{"name":"dataframeflags"}],"output":{"name":"option"}}],[11,"lt","","",6,{"inputs":[{"name":"dataframeflags"},{"name":"dataframeflags"}],"output":{"name":"bool"}}],[11,"le","","",6,{"inputs":[{"name":"dataframeflags"},{"name":"dataframeflags"}],"output":{"name":"bool"}}],[11,"gt","","",6,{"inputs":[{"name":"dataframeflags"},{"name":"dataframeflags"}],"output":{"name":"bool"}}],[11,"ge","","",6,{"inputs":[{"name":"dataframeflags"},{"name":"dataframeflags"}],"output":{"name":"bool"}}],[11,"clone","","",6,{"inputs":[{"name":"dataframeflags"}],"output":{"name":"dataframeflags"}}],[11,"assert_receiver_is_total_eq","","",6,null],[11,"eq","","",6,{"inputs":[{"name":"dataframeflags"},{"name":"dataframeflags"}],"output":{"name":"bool"}}],[11,"ne","","",6,{"inputs":[{"name":"dataframeflags"},{"name":"dataframeflags"}],"output":{"name":"bool"}}],[11,"fmt","","",6,{"inputs":[{"name":"dataframeflags"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"empty","","Returns an empty set of flags.",6,{"inputs":[{"name":"dataframeflags"}],"output":{"name":"dataframeflags"}}],[11,"all","","Returns the set containing all flags.",6,{"inputs":[{"name":"dataframeflags"}],"output":{"name":"dataframeflags"}}],[11,"bits","","Returns the raw value of the flags currently stored.",6,{"inputs":[{"name":"dataframeflags"}],"output":{"name":"u8"}}],[11,"from_bits","","Convert from underlying bit representation, unless that\nrepresentation contains bits that do not correspond to a flag.",6,{"inputs":[{"name":"dataframeflags"},{"name":"u8"}],"output":{"name":"option"}}],[11,"from_bits_truncate","","Convert from underlying bit representation, dropping any bits\nthat do not correspond to flags.",6,{"inputs":[{"name":"dataframeflags"},{"name":"u8"}],"output":{"name":"dataframeflags"}}],[11,"is_empty","","Returns `true` if no flags are currently stored.",6,{"inputs":[{"name":"dataframeflags"}],"output":{"name":"bool"}}],[11,"is_all","","Returns `true` if all flags are currently set.",6,{"inputs":[{"name":"dataframeflags"}],"output":{"name":"bool"}}],[11,"intersects","","Returns `true` if there are flags common to both `self` and `other`.",6,{"inputs":[{"name":"dataframeflags"},{"name":"dataframeflags"}],"output":{"name":"bool"}}],[11,"contains","","Returns `true` all of the flags in `other` are contained within `self`.",6,{"inputs":[{"name":"dataframeflags"},{"name":"dataframeflags"}],"output":{"name":"bool"}}],[11,"insert","","Inserts the specified flags in-place.",6,null],[11,"remove","","Removes the specified flags in-place.",6,null],[11,"toggle","","Toggles the specified flags in-place.",6,null],[11,"bitor","","Returns the union of the two sets of flags.",6,{"inputs":[{"name":"dataframeflags"},{"name":"dataframeflags"}],"output":{"name":"dataframeflags"}}],[11,"bitxor","","Returns the left flags, but with all the right flags toggled.",6,{"inputs":[{"name":"dataframeflags"},{"name":"dataframeflags"}],"output":{"name":"dataframeflags"}}],[11,"bitand","","Returns the intersection between the two sets of flags.",6,{"inputs":[{"name":"dataframeflags"},{"name":"dataframeflags"}],"output":{"name":"dataframeflags"}}],[11,"sub","","Returns the set difference of the two sets of flags.",6,{"inputs":[{"name":"dataframeflags"},{"name":"dataframeflags"}],"output":{"name":"dataframeflags"}}],[11,"not","","Returns the complement of this set of flags.",6,{"inputs":[{"name":"dataframeflags"}],"output":{"name":"dataframeflags"}}],[11,"from_iter","","",6,{"inputs":[{"name":"dataframeflags"},{"name":"t"}],"output":{"name":"dataframeflags"}}],[11,"eq","","",7,{"inputs":[{"name":"dataframeheader"},{"name":"dataframeheader"}],"output":{"name":"bool"}}],[11,"ne","","",7,{"inputs":[{"name":"dataframeheader"},{"name":"dataframeheader"}],"output":{"name":"bool"}}],[11,"clone","","",7,{"inputs":[{"name":"dataframeheader"}],"output":{"name":"dataframeheader"}}],[11,"fmt","","",7,{"inputs":[{"name":"dataframeheader"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"new","websocket::ws::util::mask","Create a new Masker with the key and the endpoint\nto be writter to.",8,null],[11,"write","","",8,null],[11,"flush","","",8,{"inputs":[{"name":"masker"}],"output":{"name":"result"}}],[11,"to_components","url","",9,{"inputs":[{"name":"url"}],"output":{"name":"result"}}],[11,"new","websocket::client::request","Creates a new client-side request.",10,{"inputs":[{"name":"request"},{"name":"t"},{"name":"r"},{"name":"w"}],"output":{"name":"result"}}],[11,"key","","Short-cut to obtain the WebSocketKey value.",10,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"version","","Short-cut to obtain the WebSocketVersion value.",10,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"protocol","","Short-cut to obtain the WebSocketProtocol value.",10,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"extensions","","Short-cut to obtain the WebSocketExtensions value.",10,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"origin","","Short-cut to obtain the Origin value.",10,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"key_mut","","Short-cut to obtain a mutable reference to the WebSocketKey value.",10,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"version_mut","","Short-cut to obtain a mutable reference to the WebSocketVersion value.",10,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"protocol_mut","","Short-cut to obtaina mutable reference to the WebSocketProtocol value.",10,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"extensions_mut","","Short-cut to obtain a mutable reference to the WebSocketExtensions value.",10,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"origin_mut","","Short-cut to obtain a mutable reference to the Origin value.",10,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"get_reader","","Returns a reference to the inner Reader.",10,{"inputs":[{"name":"request"}],"output":{"name":"bufreader"}}],[11,"get_writer","","Returns a reference to the inner Writer.",10,{"inputs":[{"name":"request"}],"output":{"name":"w"}}],[11,"get_mut_reader","","Returns a mutable reference to the inner Reader.",10,{"inputs":[{"name":"request"}],"output":{"name":"bufreader"}}],[11,"get_mut_writer","","Returns a mutable reference to the inner Writer.",10,{"inputs":[{"name":"request"}],"output":{"name":"w"}}],[11,"into_inner","","Return the inner Reader and Writer.",10,null],[11,"send","","Sends the request to the server and returns a response.",10,{"inputs":[{"name":"request"}],"output":{"name":"result"}}],[11,"read","websocket::client::response","Reads a Response off the stream associated with a Request.",11,{"inputs":[{"name":"response"},{"name":"request"}],"output":{"name":"result"}}],[11,"accept","","Short-cut to obtain the WebSocketAccept value.",11,{"inputs":[{"name":"response"}],"output":{"name":"option"}}],[11,"protocol","","Short-cut to obtain the WebSocketProtocol value.",11,{"inputs":[{"name":"response"}],"output":{"name":"option"}}],[11,"extensions","","Short-cut to obtain the WebSocketExtensions value.",11,{"inputs":[{"name":"response"}],"output":{"name":"option"}}],[11,"get_reader","","Returns a reference to the inner Reader.",11,{"inputs":[{"name":"response"}],"output":{"name":"bufreader"}}],[11,"get_writer","","Returns a reference to the inner Writer.",11,{"inputs":[{"name":"response"}],"output":{"name":"w"}}],[11,"get_mut_reader","","Returns a mutable reference to the inner Reader.",11,{"inputs":[{"name":"response"}],"output":{"name":"bufreader"}}],[11,"get_mut_writer","","Returns a mutable reference to the inner Writer.",11,{"inputs":[{"name":"response"}],"output":{"name":"w"}}],[11,"get_request","","Returns a reference to the request associated with this response.",11,{"inputs":[{"name":"response"}],"output":{"name":"request"}}],[11,"into_inner","","Return the inner Reader and Writer.",11,null],[11,"validate","","Check if this response constitutes a successful handshake.",11,{"inputs":[{"name":"response"}],"output":{"name":"result"}}],[11,"begin_with","","Consume this response and return a Client ready to transmit/receive data frames\nusing the data frame type D, Sender B and Receiver C.",11,{"inputs":[{"name":"response"},{"name":"b"},{"name":"c"}],"output":{"name":"client"}}],[11,"begin","","Consume this response and return a Client ready to transmit/receive data frames.",11,{"inputs":[{"name":"response"}],"output":{"name":"client"}}],[11,"connect","websocket::client","Connects to the given ws:// or wss:// URL and return a Request to be sent.",12,{"inputs":[{"name":"client"},{"name":"t"}],"output":{"name":"result"}}],[11,"connect_ssl_context","","Connects to the specified wss:// URL using the given SSL context.",12,{"inputs":[{"name":"client"},{"name":"t"},{"name":"sslcontext"}],"output":{"name":"result"}}],[11,"shutdown_sender","","Shuts down the sending half of the client connection, will cause all pending\nand future IO to return immediately with an appropriate value.",12,{"inputs":[{"name":"client"}],"output":{"name":"result"}}],[11,"shutdown_receiver","","Shuts down the receiving half of the client connection, will cause all pending\nand future IO to return immediately with an appropriate value.",12,{"inputs":[{"name":"client"}],"output":{"name":"result"}}],[11,"shutdown","","Shuts down the client connection, will cause all pending and future IO to\nreturn immediately with an appropriate value.",12,{"inputs":[{"name":"client"}],"output":{"name":"result"}}],[11,"new","","Creates a Client from the given Sender and Receiver.",12,{"inputs":[{"name":"client"},{"name":"s"},{"name":"r"}],"output":{"name":"client"}}],[11,"send_dataframe","","Sends a single data frame to the remote endpoint.",12,{"inputs":[{"name":"client"},{"name":"d"}],"output":{"name":"result"}}],[11,"send_message","","Sends a single message to the remote endpoint.",12,{"inputs":[{"name":"client"},{"name":"m"}],"output":{"name":"result"}}],[11,"recv_dataframe","","Reads a single data frame from the remote endpoint.",12,{"inputs":[{"name":"client"}],"output":{"name":"result"}}],[11,"incoming_dataframes","","Returns an iterator over incoming data frames.",12,{"inputs":[{"name":"client"}],"output":{"name":"dataframeiterator"}}],[11,"recv_message","","Reads a single message from this receiver.",12,{"inputs":[{"name":"client"}],"output":{"name":"result"}}],[11,"incoming_messages","","Returns an iterator over incoming messages.",12,{"inputs":[{"name":"client"}],"output":{"name":"messageiterator"}}],[11,"get_sender","","Returns a reference to the underlying Sender.",12,{"inputs":[{"name":"client"}],"output":{"name":"s"}}],[11,"get_receiver","","Returns a reference to the underlying Receiver.",12,{"inputs":[{"name":"client"}],"output":{"name":"r"}}],[11,"get_mut_sender","","Returns a mutable reference to the underlying Sender.",12,{"inputs":[{"name":"client"}],"output":{"name":"s"}}],[11,"get_mut_receiver","","Returns a mutable reference to the underlying Receiver.",12,{"inputs":[{"name":"client"}],"output":{"name":"r"}}],[11,"split","","Split this client into its constituent Sender and Receiver pair.",12,null],[11,"key","websocket::server::request","Short-cut to obtain the WebSocketKey value.",13,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"version","","Short-cut to obtain the WebSocketVersion value.",13,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"protocol","","Short-cut to obtain the WebSocketProtocol value.",13,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"extensions","","Short-cut to obtain the WebSocketExtensions value.",13,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"origin","","Short-cut to obtain the Origin value.",13,{"inputs":[{"name":"request"}],"output":{"name":"option"}}],[11,"get_reader","","Returns a reference to the inner Reader.",13,{"inputs":[{"name":"request"}],"output":{"name":"r"}}],[11,"get_writer","","Returns a reference to the inner Writer.",13,{"inputs":[{"name":"request"}],"output":{"name":"w"}}],[11,"get_mut_reader","","Returns a mutable reference to the inner Reader.",13,{"inputs":[{"name":"request"}],"output":{"name":"r"}}],[11,"get_mut_writer","","Returns a mutable reference to the inner Writer.",13,{"inputs":[{"name":"request"}],"output":{"name":"w"}}],[11,"into_inner","","Return the inner Reader and Writer",13,null],[11,"read","","Reads an inbound request.",13,{"inputs":[{"name":"request"},{"name":"r"},{"name":"w"}],"output":{"name":"result"}}],[11,"validate","","Check if this constitutes a valid WebSocket upgrade request.",13,{"inputs":[{"name":"request"}],"output":{"name":"result"}}],[11,"accept","","Accept this request, ready to send a response.",13,{"inputs":[{"name":"request"}],"output":{"name":"response"}}],[11,"fail","","Fail this request by generating a Bad Request response",13,{"inputs":[{"name":"request"}],"output":{"name":"response"}}],[11,"accept","websocket::server::response","Short-cut to obtain the WebSocketAccept value",14,{"inputs":[{"name":"response"}],"output":{"name":"option"}}],[11,"protocol","","Short-cut to obtain the WebSocketProtocol value",14,{"inputs":[{"name":"response"}],"output":{"name":"option"}}],[11,"extensions","","Short-cut to obtain the WebSocketExtensions value",14,{"inputs":[{"name":"response"}],"output":{"name":"option"}}],[11,"get_reader","","Returns a reference to the inner Reader.",14,{"inputs":[{"name":"response"}],"output":{"name":"r"}}],[11,"get_writer","","Returns a reference to the inner Writer.",14,{"inputs":[{"name":"response"}],"output":{"name":"w"}}],[11,"get_mut_reader","","Returns a mutable reference to the inner Reader.",14,{"inputs":[{"name":"response"}],"output":{"name":"r"}}],[11,"get_mut_writer","","Returns a mutable reference to the inner Writer.",14,{"inputs":[{"name":"response"}],"output":{"name":"w"}}],[11,"get_request","","Returns a reference to the request associated with this response/",14,{"inputs":[{"name":"response"}],"output":{"name":"request"}}],[11,"into_inner","","Return the inner Reader and Writer",14,null],[11,"new","","Create a new outbound WebSocket response.",14,{"inputs":[{"name":"response"},{"name":"request"}],"output":{"name":"response"}}],[11,"bad_request","","Create a Bad Request response",14,{"inputs":[{"name":"response"},{"name":"request"}],"output":{"name":"response"}}],[11,"accept_mut","","Short-cut to obtain a mutable reference to the WebSocketAccept value\nNote that to add a header that does not already exist, ```WebSocketResponse.headers.set()```\nmust be used.",14,{"inputs":[{"name":"response"}],"output":{"name":"option"}}],[11,"protocol_mut","","Short-cut to obtain a mutable reference to the WebSocketProtocol value\nNote that to add a header that does not already exist, ```WebSocketResponse.headers.set()```\nmust be used.",14,{"inputs":[{"name":"response"}],"output":{"name":"option"}}],[11,"extensions_mut","","Short-cut to obtain a mutable reference to the WebSocketExtensions value\nNote that to add a header that does not already exist, ```WebSocketResponse.headers.set()```\nmust be used.",14,{"inputs":[{"name":"response"}],"output":{"name":"option"}}],[11,"send_with","","Send this response with the given data frame type D, Sender B and Receiver C.",14,{"inputs":[{"name":"response"},{"name":"b"},{"name":"c"}],"output":{"name":"result"}}],[11,"send_into_inner","","Send this response, retrieving the inner Reader and Writer",14,{"inputs":[{"name":"response"}],"output":{"name":"result"}}],[11,"send","","Send this response, returning a Client ready to transmit/receive data frames",14,{"inputs":[{"name":"response"}],"output":{"name":"result"}}],[11,"next","websocket::server","",3,{"inputs":[{"name":"server"}],"output":{"name":"option"}}],[11,"read_request","","Process this connection and read the request.",15,{"inputs":[{"name":"connection"}],"output":{"name":"result"}}],[11,"shutdown","","Shuts down the currennt connection in the specified way.\nAll future IO calls to this connection will return immediately with an appropriate\nreturn value.",15,{"inputs":[{"name":"connection"},{"name":"shutdown"}],"output":{"name":"result"}}],[11,"eq","websocket::dataframe","",16,{"inputs":[{"name":"dataframe"},{"name":"dataframe"}],"output":{"name":"bool"}}],[11,"ne","","",16,{"inputs":[{"name":"dataframe"},{"name":"dataframe"}],"output":{"name":"bool"}}],[11,"clone","","",16,{"inputs":[{"name":"dataframe"}],"output":{"name":"dataframe"}}],[11,"fmt","","",16,{"inputs":[{"name":"dataframe"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"new","","Creates a new DataFrame.",16,{"inputs":[{"name":"dataframe"},{"name":"bool"},{"name":"opcode"},{"name":"vec"}],"output":{"name":"dataframe"}}],[11,"read_dataframe","","Reads a DataFrame from a Reader.",16,{"inputs":[{"name":"dataframe"},{"name":"r"},{"name":"bool"}],"output":{"name":"result"}}],[11,"is_last","","",16,{"inputs":[{"name":"dataframe"}],"output":{"name":"bool"}}],[11,"opcode","","",16,{"inputs":[{"name":"dataframe"}],"output":{"name":"u8"}}],[11,"reserved","","",16,null],[11,"payload","","",16,{"inputs":[{"name":"dataframe"}],"output":{"name":"cow"}}],[11,"eq","","",17,{"inputs":[{"name":"opcode"},{"name":"opcode"}],"output":{"name":"bool"}}],[11,"ne","","",17,{"inputs":[{"name":"opcode"},{"name":"opcode"}],"output":{"name":"bool"}}],[11,"fmt","","",17,{"inputs":[{"name":"opcode"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","","",17,{"inputs":[{"name":"opcode"}],"output":{"name":"opcode"}}],[11,"new","","Attempts to form an Opcode from a nibble.",17,{"inputs":[{"name":"opcode"},{"name":"u8"}],"output":{"name":"option"}}],[11,"clone","websocket::message","",18,{"inputs":[{"name":"type"}],"output":{"name":"type"}}],[11,"eq","","",18,{"inputs":[{"name":"type"},{"name":"type"}],"output":{"name":"bool"}}],[11,"ne","","",18,{"inputs":[{"name":"type"},{"name":"type"}],"output":{"name":"bool"}}],[11,"fmt","","",18,{"inputs":[{"name":"type"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"fmt","","",19,{"inputs":[{"name":"message"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","","",19,{"inputs":[{"name":"message"}],"output":{"name":"message"}}],[11,"eq","","",19,{"inputs":[{"name":"message"},{"name":"message"}],"output":{"name":"bool"}}],[11,"ne","","",19,{"inputs":[{"name":"message"},{"name":"message"}],"output":{"name":"bool"}}],[11,"text","","Create a new WebSocket message with text data",19,{"inputs":[{"name":"message"},{"name":"s"}],"output":{"name":"message"}}],[11,"binary","","Create a new WebSocket message with binary data",19,{"inputs":[{"name":"message"},{"name":"b"}],"output":{"name":"message"}}],[11,"close","","Create a new WebSocket message that signals the end of a WebSocket\nconnection, although messages can still be sent after sending this",19,{"inputs":[{"name":"message"}],"output":{"name":"message"}}],[11,"close_because","","Create a new WebSocket message that signals the end of a WebSocket\nconnection and provide a text reason and a status code for why.\nMessages can still be sent after sending this message.",19,{"inputs":[{"name":"message"},{"name":"u16"},{"name":"s"}],"output":{"name":"message"}}],[11,"ping","","Create a ping WebSocket message, a pong is usually sent back\nafter sending this with the same data",19,{"inputs":[{"name":"message"},{"name":"p"}],"output":{"name":"message"}}],[11,"pong","","Create a pong WebSocket message, usually a response to a\nping message",19,{"inputs":[{"name":"message"},{"name":"p"}],"output":{"name":"message"}}],[11,"into_pong","","Convert a ping message to a pong, keeping the data.\nThis will fail if the original message is not a ping.",19,{"inputs":[{"name":"message"}],"output":{"name":"result"}}],[11,"is_last","","",19,{"inputs":[{"name":"message"}],"output":{"name":"bool"}}],[11,"opcode","","",19,{"inputs":[{"name":"message"}],"output":{"name":"u8"}}],[11,"reserved","","",19,null],[11,"payload","","",19,{"inputs":[{"name":"message"}],"output":{"name":"cow"}}],[11,"size","","",19,{"inputs":[{"name":"message"}],"output":{"name":"usize"}}],[11,"write_payload","","",19,{"inputs":[{"name":"message"},{"name":"w"}],"output":{"name":"result"}}],[11,"dataframes","","",19,null],[11,"from_dataframes","","Attempt to form a message from a series of data frames",19,{"inputs":[{"name":"message"},{"name":"vec"}],"output":{"name":"result"}}],[11,"into","collections::vec","",20,{"inputs":[{"name":"vec"}],"output":{"name":"cow"}}],[11,"into","collections::borrow","",21,{"inputs":[{"name":"cow"}],"output":{"name":"cow"}}],[11,"fmt","websocket::result","",22,{"inputs":[{"name":"websocketerror"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"fmt","","",22,{"inputs":[{"name":"websocketerror"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"description","","",22,{"inputs":[{"name":"websocketerror"}],"output":{"name":"str"}}],[11,"cause","","",22,{"inputs":[{"name":"websocketerror"}],"output":{"name":"option"}}],[11,"from","","",22,{"inputs":[{"name":"websocketerror"},{"name":"error"}],"output":{"name":"websocketerror"}}],[11,"from","","",22,{"inputs":[{"name":"websocketerror"},{"name":"error"}],"output":{"name":"websocketerror"}}],[11,"from","","",22,{"inputs":[{"name":"websocketerror"},{"name":"parseerror"}],"output":{"name":"websocketerror"}}],[11,"from","","",22,{"inputs":[{"name":"websocketerror"},{"name":"sslerror"}],"output":{"name":"websocketerror"}}],[11,"from","","",22,{"inputs":[{"name":"websocketerror"},{"name":"utf8error"}],"output":{"name":"websocketerror"}}],[11,"from","","",22,{"inputs":[{"name":"websocketerror"},{"name":"error"}],"output":{"name":"websocketerror"}}],[11,"from","","",22,{"inputs":[{"name":"websocketerror"},{"name":"wsurlerrorkind"}],"output":{"name":"websocketerror"}}],[11,"fmt","","",23,{"inputs":[{"name":"wsurlerrorkind"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"fmt","","",23,{"inputs":[{"name":"wsurlerrorkind"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"description","","",23,{"inputs":[{"name":"wsurlerrorkind"}],"output":{"name":"str"}}],[11,"read","websocket::stream","",24,null],[11,"write","","",24,null],[11,"flush","","",24,{"inputs":[{"name":"websocketstream"}],"output":{"name":"result"}}],[11,"peer_addr","","See `TcpStream.peer_addr()`.",24,{"inputs":[{"name":"websocketstream"}],"output":{"name":"result"}}],[11,"local_addr","","See `TcpStream.local_addr()`.",24,{"inputs":[{"name":"websocketstream"}],"output":{"name":"result"}}],[11,"set_nodelay","","See `TcpStream.set_nodelay()`.",24,{"inputs":[{"name":"websocketstream"},{"name":"bool"}],"output":{"name":"result"}}],[11,"set_keepalive","","See `TcpStream.set_keepalive()`.",24,{"inputs":[{"name":"websocketstream"},{"name":"option"}],"output":{"name":"result"}}],[11,"shutdown","","See `TcpStream.shutdown()`.",24,{"inputs":[{"name":"websocketstream"},{"name":"shutdown"}],"output":{"name":"result"}}],[11,"try_clone","","See `TcpStream.try_clone()`.",24,{"inputs":[{"name":"websocketstream"}],"output":{"name":"result"}}],[11,"clone","websocket::header::accept","",25,{"inputs":[{"name":"websocketaccept"}],"output":{"name":"websocketaccept"}}],[11,"eq","","",25,{"inputs":[{"name":"websocketaccept"},{"name":"websocketaccept"}],"output":{"name":"bool"}}],[11,"ne","","",25,{"inputs":[{"name":"websocketaccept"},{"name":"websocketaccept"}],"output":{"name":"bool"}}],[11,"fmt","","",25,{"inputs":[{"name":"websocketaccept"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"from_str","","",25,{"inputs":[{"name":"websocketaccept"},{"name":"str"}],"output":{"name":"result"}}],[11,"new","","Create a new WebSocketAccept from the given WebSocketKey",25,{"inputs":[{"name":"websocketaccept"},{"name":"websocketkey"}],"output":{"name":"websocketaccept"}}],[11,"serialize","","Return the Base64 encoding of this WebSocketAccept",25,{"inputs":[{"name":"websocketaccept"}],"output":{"name":"string"}}],[11,"header_name","","",25,{"inputs":[{"name":"websocketaccept"}],"output":{"name":"str"}}],[11,"parse_header","","",25,null],[11,"fmt_header","","",25,{"inputs":[{"name":"websocketaccept"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","websocket::header::key","",26,{"inputs":[{"name":"websocketkey"}],"output":{"name":"websocketkey"}}],[11,"eq","","",26,{"inputs":[{"name":"websocketkey"},{"name":"websocketkey"}],"output":{"name":"bool"}}],[11,"ne","","",26,{"inputs":[{"name":"websocketkey"},{"name":"websocketkey"}],"output":{"name":"bool"}}],[11,"fmt","","",26,{"inputs":[{"name":"websocketkey"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"from_str","","",26,{"inputs":[{"name":"websocketkey"},{"name":"str"}],"output":{"name":"result"}}],[11,"new","","Generate a new, random WebSocketKey",26,{"inputs":[{"name":"websocketkey"}],"output":{"name":"websocketkey"}}],[11,"serialize","","Return the Base64 encoding of this WebSocketKey",26,{"inputs":[{"name":"websocketkey"}],"output":{"name":"string"}}],[11,"header_name","","",26,{"inputs":[{"name":"websocketkey"}],"output":{"name":"str"}}],[11,"parse_header","","",26,null],[11,"fmt_header","","",26,{"inputs":[{"name":"websocketkey"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"fmt","websocket::header::protocol","",27,{"inputs":[{"name":"websocketprotocol"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","","",27,{"inputs":[{"name":"websocketprotocol"}],"output":{"name":"websocketprotocol"}}],[11,"eq","","",27,{"inputs":[{"name":"websocketprotocol"},{"name":"websocketprotocol"}],"output":{"name":"bool"}}],[11,"ne","","",27,{"inputs":[{"name":"websocketprotocol"},{"name":"websocketprotocol"}],"output":{"name":"bool"}}],[11,"new","collections::vec","Constructs a new, empty `Vec<T>`.",20,{"inputs":[{"name":"vec"}],"output":{"name":"vec"}}],[11,"with_capacity","","Constructs a new, empty `Vec<T>` with the specified capacity.",20,{"inputs":[{"name":"vec"},{"name":"usize"}],"output":{"name":"vec"}}],[11,"from_raw_parts","","Creates a `Vec<T>` directly from the raw components of another vector.",20,null],[11,"capacity","","Returns the number of elements the vector can hold without\nreallocating.",20,{"inputs":[{"name":"vec"}],"output":{"name":"usize"}}],[11,"reserve","","Reserves capacity for at least `additional` more elements to be inserted\nin the given `Vec<T>`. The collection may reserve more space to avoid\nfrequent reallocations.",20,null],[11,"reserve_exact","","Reserves the minimum capacity for exactly `additional` more elements to\nbe inserted in the given `Vec<T>`. Does nothing if the capacity is already\nsufficient.",20,null],[11,"shrink_to_fit","","Shrinks the capacity of the vector as much as possible.",20,null],[11,"into_boxed_slice","","Converts the vector into Box<[T]>.",20,{"inputs":[{"name":"vec"}],"output":{"name":"box"}}],[11,"truncate","","Shorten a vector to be `len` elements long, dropping excess elements.",20,null],[11,"as_slice","","Extracts a slice containing the entire vector.",20,null],[11,"as_mut_slice","","Extracts a mutable slice of the entire vector.",20,null],[11,"set_len","","Sets the length of a vector.",20,null],[11,"swap_remove","","Removes an element from anywhere in the vector and return it, replacing\nit with the last element.",20,{"inputs":[{"name":"vec"},{"name":"usize"}],"output":{"name":"t"}}],[11,"insert","","Inserts an element at position `index` within the vector, shifting all\nelements after position `i` one position to the right.",20,null],[11,"remove","","Removes and returns the element at position `index` within the vector,\nshifting all elements after position `index` one position to the left.",20,{"inputs":[{"name":"vec"},{"name":"usize"}],"output":{"name":"t"}}],[11,"retain","","Retains only the elements specified by the predicate.",20,null],[11,"push","","Appends an element to the back of a collection.",20,null],[11,"pop","","Removes the last element from a vector and returns it, or `None` if it\nis empty.",20,{"inputs":[{"name":"vec"}],"output":{"name":"option"}}],[11,"append","","Moves all the elements of `other` into `Self`, leaving `other` empty.",20,null],[11,"drain","","Create a draining iterator that removes the specified range in the vector\nand yields the removed items from start to end. The element range is\nremoved even if the iterator is not consumed until the end.",20,{"inputs":[{"name":"vec"},{"name":"r"}],"output":{"name":"drain"}}],[11,"clear","","Clears the vector, removing all values.",20,null],[11,"len","","Returns the number of elements in the vector.",20,{"inputs":[{"name":"vec"}],"output":{"name":"usize"}}],[11,"is_empty","","Returns `true` if the vector contains no elements.",20,{"inputs":[{"name":"vec"}],"output":{"name":"bool"}}],[11,"split_off","","Splits the collection into two at the given index.",20,{"inputs":[{"name":"vec"},{"name":"usize"}],"output":{"name":"vec"}}],[11,"resize","","Resizes the `Vec` in-place so that `len()` is equal to `new_len`.",20,null],[11,"push_all","","",20,null],[11,"extend_from_slice","","Appends all elements in a slice to the `Vec`.",20,null],[11,"dedup","","Removes consecutive repeated elements in the vector.",20,null],[11,"clone","collections::binary_heap","",28,{"inputs":[{"name":"binaryheap"}],"output":{"name":"binaryheap"}}],[11,"clone_from","","",28,null],[11,"default","","",28,{"inputs":[{"name":"binaryheap"}],"output":{"name":"binaryheap"}}],[11,"fmt","","",28,{"inputs":[{"name":"binaryheap"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"new","","Creates an empty `BinaryHeap` as a max-heap.",28,{"inputs":[{"name":"binaryheap"}],"output":{"name":"binaryheap"}}],[11,"with_capacity","","Creates an empty `BinaryHeap` with a specific capacity.\nThis preallocates enough memory for `capacity` elements,\nso that the `BinaryHeap` does not have to be reallocated\nuntil it contains at least that many values.",28,{"inputs":[{"name":"binaryheap"},{"name":"usize"}],"output":{"name":"binaryheap"}}],[11,"from_vec","","Creates a `BinaryHeap` from a vector. This is sometimes called\n`heapifying` the vector.",28,{"inputs":[{"name":"binaryheap"},{"name":"vec"}],"output":{"name":"binaryheap"}}],[11,"iter","","Returns an iterator visiting all values in the underlying vector, in\narbitrary order.",28,{"inputs":[{"name":"binaryheap"}],"output":{"name":"iter"}}],[11,"peek","","Returns the greatest item in the binary heap, or `None` if it is empty.",28,{"inputs":[{"name":"binaryheap"}],"output":{"name":"option"}}],[11,"capacity","","Returns the number of elements the binary heap can hold without reallocating.",28,{"inputs":[{"name":"binaryheap"}],"output":{"name":"usize"}}],[11,"reserve_exact","","Reserves the minimum capacity for exactly `additional` more elements to be inserted in the\ngiven `BinaryHeap`. Does nothing if the capacity is already sufficient.",28,null],[11,"reserve","","Reserves capacity for at least `additional` more elements to be inserted in the\n`BinaryHeap`. The collection may reserve more space to avoid frequent reallocations.",28,null],[11,"shrink_to_fit","","Discards as much additional capacity as possible.",28,null],[11,"pop","","Removes the greatest item from the binary heap and returns it, or `None` if it\nis empty.",28,{"inputs":[{"name":"binaryheap"}],"output":{"name":"option"}}],[11,"push","","Pushes an item onto the binary heap.",28,null],[11,"push_pop","","Pushes an item onto the binary heap, then pops the greatest item off the queue in\nan optimized fashion.",28,{"inputs":[{"name":"binaryheap"},{"name":"t"}],"output":{"name":"t"}}],[11,"replace","","Pops the greatest item off the binary heap, then pushes an item onto the queue in\nan optimized fashion. The push is done regardless of whether the binary heap\nwas empty.",28,{"inputs":[{"name":"binaryheap"},{"name":"t"}],"output":{"name":"option"}}],[11,"into_vec","","Consumes the `BinaryHeap` and returns the underlying vector\nin arbitrary order.",28,{"inputs":[{"name":"binaryheap"}],"output":{"name":"vec"}}],[11,"into_sorted_vec","","Consumes the `BinaryHeap` and returns a vector in sorted\n(ascending) order.",28,{"inputs":[{"name":"binaryheap"}],"output":{"name":"vec"}}],[11,"len","","Returns the length of the binary heap.",28,{"inputs":[{"name":"binaryheap"}],"output":{"name":"usize"}}],[11,"is_empty","","Checks if the binary heap is empty.",28,{"inputs":[{"name":"binaryheap"}],"output":{"name":"bool"}}],[11,"drain","","Clears the binary heap, returning an iterator over the removed elements.",28,{"inputs":[{"name":"binaryheap"}],"output":{"name":"drain"}}],[11,"clear","","Drops all items from the binary heap.",28,null],[11,"drop","","",29,null],[11,"clone","","",30,{"inputs":[{"name":"iter"}],"output":{"name":"iter"}}],[11,"next","","",30,{"inputs":[{"name":"iter"}],"output":{"name":"option"}}],[11,"size_hint","","",30,null],[11,"next_back","","",30,{"inputs":[{"name":"iter"}],"output":{"name":"option"}}],[11,"next","","",31,{"inputs":[{"name":"intoiter"}],"output":{"name":"option"}}],[11,"size_hint","","",31,null],[11,"next_back","","",31,{"inputs":[{"name":"intoiter"}],"output":{"name":"option"}}],[11,"next","","",32,{"inputs":[{"name":"drain"}],"output":{"name":"option"}}],[11,"size_hint","","",32,null],[11,"next_back","","",32,{"inputs":[{"name":"drain"}],"output":{"name":"option"}}],[11,"from","","",28,{"inputs":[{"name":"binaryheap"},{"name":"vec"}],"output":{"name":"binaryheap"}}],[11,"from","collections::vec","",20,{"inputs":[{"name":"vec"},{"name":"binaryheap"}],"output":{"name":"vec"}}],[11,"from_iter","collections::binary_heap","",28,{"inputs":[{"name":"binaryheap"},{"name":"i"}],"output":{"name":"binaryheap"}}],[11,"into_iter","","Creates a consuming iterator, that is, one that moves each value out of\nthe binary heap in arbitrary order. The binary heap cannot be used\nafter calling this.",28,{"inputs":[{"name":"binaryheap"}],"output":{"name":"intoiter"}}],[11,"extend","","",28,null],[11,"extend","","",28,null],[11,"next","collections::btree::node","",33,{"inputs":[{"name":"rawitems"}],"output":{"name":"option"}}],[11,"next_back","","",33,{"inputs":[{"name":"rawitems"}],"output":{"name":"option"}}],[11,"drop","","",33,null],[11,"drop","","",34,null],[11,"as_slices","","",34,null],[11,"as_slices_mut","","",34,null],[11,"as_slices_internal","","",34,{"inputs":[{"name":"node"}],"output":{"name":"nodeslice"}}],[11,"as_slices_internal_mut","","",34,{"inputs":[{"name":"node"}],"output":{"name":"mutnodeslice"}}],[11,"keys","","",34,null],[11,"keys_mut","","",34,null],[11,"vals","","",34,null],[11,"vals_mut","","",34,null],[11,"edges","","",34,null],[11,"edges_mut","","",34,null],[11,"clone","","",34,{"inputs":[{"name":"node"}],"output":{"name":"node"}}],[11,"clone","","",35,{"inputs":[{"name":"handle"}],"output":{"name":"handle"}}],[11,"search","","Searches for the given key in the node. If it finds an exact match,\n`Found` will be yielded with the matching index. If it doesn't find an exact match,\n`GoDown` will be yielded with the index of the subtree the key must lie in.",34,{"inputs":[{"name":"node"},{"name":"noderef"},{"name":"q"}],"output":{"name":"searchresult"}}],[11,"make_leaf_root","","Make a leaf root from scratch",34,{"inputs":[{"name":"node"},{"name":"usize"}],"output":{"name":"node"}}],[11,"make_internal_root","","Make an internal root and swap it with an old root",34,null],[11,"len","","How many key-value pairs the node contains",34,{"inputs":[{"name":"node"}],"output":{"name":"usize"}}],[11,"is_empty","","Does the node not contain any key-value pairs",34,{"inputs":[{"name":"node"}],"output":{"name":"bool"}}],[11,"capacity","","How many key-value pairs the node can fit",34,{"inputs":[{"name":"node"}],"output":{"name":"usize"}}],[11,"is_leaf","","If the node has any children",34,{"inputs":[{"name":"node"}],"output":{"name":"bool"}}],[11,"is_underfull","","if the node has too few elements",34,{"inputs":[{"name":"node"}],"output":{"name":"bool"}}],[11,"is_full","","if the node cannot fit any more elements",34,{"inputs":[{"name":"node"}],"output":{"name":"bool"}}],[11,"node","","Returns a reference to the node that contains the pointed-to edge or key/value pair. This\nis very different from `edge` and `edge_mut` because those return children of the node\nreturned by `node`.",35,{"inputs":[{"name":"handle"}],"output":{"name":"node"}}],[11,"as_raw","","Converts a handle into one that stores the same information using a raw pointer. This can\nbe useful in conjunction with `from_raw` when the type system is insufficient for\ndetermining the lifetimes of the nodes.",35,{"inputs":[{"name":"handle"}],"output":{"name":"handle"}}],[11,"from_raw","","Converts from a handle stored with a raw pointer, which isn't directly usable, to a handle\nstored with a reference. This is an unsafe inverse of `as_raw`, and together they allow\nunsafely extending the lifetime of the reference to the `Node`.",35,{"inputs":[{"name":"handle"}],"output":{"name":"handle"}}],[11,"from_raw_mut","","Converts from a handle stored with a raw pointer, which isn't directly usable, to a handle\nstored with a mutable reference. This is an unsafe inverse of `as_raw`, and together they\nallow unsafely extending the lifetime of the reference to the `Node`.",35,{"inputs":[{"name":"handle"}],"output":{"name":"handle"}}],[11,"into_edge","","Turns the handle into a reference to the edge it points at. This is necessary because the\nreturned pointer has a larger lifetime than what would be returned by `edge` or `edge_mut`,\nmaking it more suitable for moving down a chain of nodes.",35,{"inputs":[{"name":"handle"}],"output":{"name":"node"}}],[11,"into_edge_mut","","Turns the handle into a mutable reference to the edge it points at. This is necessary\nbecause the returned pointer has a larger lifetime than what would be returned by\n`edge_mut`, making it more suitable for moving down a chain of nodes.",35,{"inputs":[{"name":"handle"}],"output":{"name":"node"}}],[11,"force","","Figure out whether this handle is pointing to something in a leaf node or to something in\nan internal node, clarifying the type according to the result.",35,{"inputs":[{"name":"handle"}],"output":{"name":"forceresult"}}],[11,"insert_as_leaf","","Tries to insert this key-value pair at the given index in this leaf node\nIf the node is full, we have to split it.",35,null],[11,"edge_mut","","Returns a mutable reference to the edge pointed-to by this handle. This should not be\nconfused with `node`, which references the parent node of what is returned here.",35,{"inputs":[{"name":"handle"}],"output":{"name":"node"}}],[11,"insert_as_internal","","Tries to insert this key-value pair at the given index in this internal node\nIf the node is full, we have to split it.",35,{"inputs":[{"name":"handle"},{"name":"k"},{"name":"v"},{"name":"node"}],"output":{"name":"insertionresult"}}],[11,"handle_underflow","","Handle an underflow in this node's child. We favor handling \"to the left\" because we know\nwe're empty, but our neighbour can be full. Handling to the left means when we choose to\nsteal, we pop off the end of our neighbour (always fast) and \"unshift\" ourselves\n(always slow, but at least faster since we know we're half-empty).\nHandling \"to the right\" reverses these roles. Of course, we merge whenever possible\nbecause we want dense nodes, and merging is about equal work regardless of direction.",35,null],[11,"into_kv","","Turns the handle into references to the key and value it points at. This is necessary\nbecause the returned pointers have larger lifetimes than what would be returned by `key`\nor `val`.",35,null],[11,"into_kv_mut","","Turns the handle into mutable references to the key and value it points at. This is\nnecessary because the returned pointers have larger lifetimes than what would be returned\nby `key_mut` or `val_mut`.",35,null],[11,"into_left_edge","","Convert this handle into one pointing at the edge immediately to the left of the key/value\npair pointed-to by this handle. This is useful because it returns a reference with larger\nlifetime than `left_edge`.",35,{"inputs":[{"name":"handle"}],"output":{"name":"handle"}}],[11,"key_mut","","Returns a mutable reference to the key pointed-to by this handle. This doesn't return a\nreference with a lifetime as large as `into_kv_mut`, but it also does not consume the\nhandle.",35,{"inputs":[{"name":"handle"}],"output":{"name":"k"}}],[11,"val_mut","","Returns a mutable reference to the value pointed-to by this handle. This doesn't return a\nreference with a lifetime as large as `into_kv_mut`, but it also does not consume the\nhandle.",35,{"inputs":[{"name":"handle"}],"output":{"name":"v"}}],[11,"left_edge","","Gets the handle pointing to the edge immediately to the left of the key/value pair pointed\nto by this handle.",35,{"inputs":[{"name":"handle"}],"output":{"name":"handle"}}],[11,"right_edge","","Gets the handle pointing to the edge immediately to the right of the key/value pair pointed\nto by this handle.",35,{"inputs":[{"name":"handle"}],"output":{"name":"handle"}}],[11,"remove_as_leaf","","Removes the key/value pair at the handle's location.",35,null],[11,"kv_handle","","Returns the mutable handle pointing to the key/value pair at a given index.",34,{"inputs":[{"name":"node"},{"name":"usize"}],"output":{"name":"handle"}}],[11,"iter","","",34,{"inputs":[{"name":"node"}],"output":{"name":"abstraversal"}}],[11,"iter_mut","","",34,{"inputs":[{"name":"node"}],"output":{"name":"abstraversal"}}],[11,"into_iter","","",34,{"inputs":[{"name":"node"}],"output":{"name":"abstraversal"}}],[11,"hoist_lone_child","","When a node has no keys or values and only a single edge, extract that edge.",34,null],[11,"clone","","",36,{"inputs":[{"name":"elemsandedges"}],"output":{"name":"elemsandedges"}}],[11,"next_kv","","",36,{"inputs":[{"name":"elemsandedges"}],"output":{"name":"option"}}],[11,"next_kv_back","","",36,{"inputs":[{"name":"elemsandedges"}],"output":{"name":"option"}}],[11,"next_edge","","",36,{"inputs":[{"name":"elemsandedges"}],"output":{"name":"option"}}],[11,"next_edge_back","","",36,{"inputs":[{"name":"elemsandedges"}],"output":{"name":"option"}}],[11,"next_kv","","",37,{"inputs":[{"name":"movetraversalimpl"}],"output":{"name":"option"}}],[11,"next_kv_back","","",37,{"inputs":[{"name":"movetraversalimpl"}],"output":{"name":"option"}}],[11,"next_edge","","",37,{"inputs":[{"name":"movetraversalimpl"}],"output":{"name":"option"}}],[11,"next_edge_back","","",37,{"inputs":[{"name":"movetraversalimpl"}],"output":{"name":"option"}}],[11,"drop","","",37,null],[11,"clone","","",38,{"inputs":[{"name":"abstraversal"}],"output":{"name":"abstraversal"}}],[11,"next","","",38,{"inputs":[{"name":"abstraversal"}],"output":{"name":"option"}}],[11,"next_back","","",38,{"inputs":[{"name":"abstraversal"}],"output":{"name":"option"}}],[11,"next_edge_item","","Advances the iterator and returns the item if it's an edge. Returns None\nand does nothing if the first item is not an edge.",38,{"inputs":[{"name":"abstraversal"}],"output":{"name":"option"}}],[11,"next_edge_item_back","","Advances the iterator and returns the item if it's an edge. Returns None\nand does nothing if the last item is not an edge.",38,{"inputs":[{"name":"abstraversal"}],"output":{"name":"option"}}],[11,"next_kv_item","","Advances the iterator and returns the item if it's a key-value pair. Returns None\nand does nothing if the first item is not a key-value pair.",38,{"inputs":[{"name":"abstraversal"}],"output":{"name":"option"}}],[11,"next_kv_item_back","","Advances the iterator and returns the item if it's a key-value pair. Returns None\nand does nothing if the last item is not a key-value pair.",38,{"inputs":[{"name":"abstraversal"}],"output":{"name":"option"}}],[11,"slice_from","","Returns a sub-slice with elements starting with `min_key`.",39,{"inputs":[{"name":"nodeslice"},{"name":"q"}],"output":{"name":"nodeslice"}}],[11,"slice_to","","Returns a sub-slice with elements up to and including `max_key`.",39,{"inputs":[{"name":"nodeslice"},{"name":"q"}],"output":{"name":"nodeslice"}}],[11,"iter","","Returns an iterator over key/value pairs and edges in a slice.",39,{"inputs":[{"name":"nodeslice"}],"output":{"name":"abstraversal"}}],[11,"slice_from","","Returns a sub-slice with elements starting with `min_key`.",40,{"inputs":[{"name":"mutnodeslice"},{"name":"q"}],"output":{"name":"mutnodeslice"}}],[11,"slice_to","","Returns a sub-slice with elements up to and including `max_key`.",40,{"inputs":[{"name":"mutnodeslice"},{"name":"q"}],"output":{"name":"mutnodeslice"}}],[11,"iter_mut","","Returns an iterator over key/value pairs and edges in a slice.",40,{"inputs":[{"name":"mutnodeslice"}],"output":{"name":"abstraversal"}}],[11,"clone","collections::btree::map","",41,{"inputs":[{"name":"btreemap"}],"output":{"name":"btreemap"}}],[11,"clone","","",42,{"inputs":[{"name":"absiter"}],"output":{"name":"absiter"}}],[11,"new","","Makes a new empty BTreeMap with a reasonable choice for B.",41,{"inputs":[{"name":"btreemap"}],"output":{"name":"btreemap"}}],[11,"with_b","","Makes a new empty BTreeMap with the given B.",41,{"inputs":[{"name":"btreemap"},{"name":"usize"}],"output":{"name":"btreemap"}}],[11,"clear","","Clears the map, removing all values.",41,null],[11,"get","","Returns a reference to the value corresponding to the key.",41,{"inputs":[{"name":"btreemap"},{"name":"q"}],"output":{"name":"option"}}],[11,"contains_key","","Returns true if the map contains a value for the specified key.",41,{"inputs":[{"name":"btreemap"},{"name":"q"}],"output":{"name":"bool"}}],[11,"get_mut","","Returns a mutable reference to the value corresponding to the key.",41,{"inputs":[{"name":"btreemap"},{"name":"q"}],"output":{"name":"option"}}],[11,"insert","","Inserts a key-value pair into the map.",41,{"inputs":[{"name":"btreemap"},{"name":"k"},{"name":"v"}],"output":{"name":"option"}}],[11,"remove","","Removes a key from the map, returning the value at the key if the key\nwas previously in the map.",41,{"inputs":[{"name":"btreemap"},{"name":"q"}],"output":{"name":"option"}}],[11,"into_iter","","Gets an owning iterator over the entries of the map.",41,{"inputs":[{"name":"btreemap"}],"output":{"name":"intoiter"}}],[11,"deref","collections::btree::map::stack","",43,{"inputs":[{"name":"idref"}],"output":{"name":"t"}}],[11,"deref_mut","","",43,{"inputs":[{"name":"idref"}],"output":{"name":"t"}}],[11,"new","","Creates a new PartialSearchStack from a BTreeMap by initializing the stack with the\nroot of the tree.",44,{"inputs":[{"name":"partialsearchstack"},{"name":"btreemap"}],"output":{"name":"partialsearchstack"}}],[11,"with","","Breaks up the stack into a `Pusher` and the next `Node`, allowing the given closure\nto interact with, search, and finally push the `Node` onto the stack. The passed in\nclosure must be polymorphic on the `'id` lifetime parameter, as this statically\nensures that only `Handle`s from the correct `Node` can be pushed.",44,{"inputs":[{"name":"partialsearchstack"},{"name":"f"}],"output":{"name":"t"}}],[11,"push","","Pushes the requested child of the stack's current top on top of the stack. If the child\nexists, then a new PartialSearchStack is yielded. Otherwise, a VacantSearchStack is\nyielded.",45,{"inputs":[{"name":"pusher"},{"name":"handle"}],"output":{"name":"partialsearchstack"}}],[11,"seal","","Converts the PartialSearchStack into a SearchStack.",45,{"inputs":[{"name":"pusher"},{"name":"handle"}],"output":{"name":"searchstack"}}],[11,"peek","","Gets a reference to the value the stack points to.",46,{"inputs":[{"name":"searchstack"}],"output":{"name":"v"}}],[11,"peek_mut","","Gets a mutable reference to the value the stack points to.",46,{"inputs":[{"name":"searchstack"}],"output":{"name":"v"}}],[11,"into_top","","Converts the stack into a mutable reference to the value it points to, with a lifetime\ntied to the original tree.",46,{"inputs":[{"name":"searchstack"}],"output":{"name":"v"}}],[11,"remove","","Removes the key and value in the top element of the stack, then handles underflows as\ndescribed in BTree's pop function.",46,null],[11,"insert","","Inserts the key and value into the top element in the stack, and if that node has to\nsplit recursively inserts the split contents into the next element stack until\nsplits stop.",46,{"inputs":[{"name":"searchstack"},{"name":"k"},{"name":"v"}],"output":{"name":"v"}}],[11,"from_iter","collections::btree::map","",41,{"inputs":[{"name":"btreemap"},{"name":"t"}],"output":{"name":"btreemap"}}],[11,"extend","","",41,null],[11,"extend","","",41,null],[11,"hash","","",41,null],[11,"default","","",41,{"inputs":[{"name":"btreemap"}],"output":{"name":"btreemap"}}],[11,"eq","","",41,{"inputs":[{"name":"btreemap"},{"name":"btreemap"}],"output":{"name":"bool"}}],[11,"partial_cmp","","",41,{"inputs":[{"name":"btreemap"},{"name":"btreemap"}],"output":{"name":"option"}}],[11,"cmp","","",41,{"inputs":[{"name":"btreemap"},{"name":"btreemap"}],"output":{"name":"ordering"}}],[11,"fmt","","",41,{"inputs":[{"name":"btreemap"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"index","","",41,{"inputs":[{"name":"btreemap"},{"name":"q"}],"output":{"name":"v"}}],[11,"traverse","collections::btree::node","",38,{"inputs":[{"name":"abstraversal"},{"name":"node"}],"output":{"name":"abstraversal"}}],[11,"traverse","","",38,{"inputs":[{"name":"abstraversal"},{"name":"node"}],"output":{"name":"abstraversal"}}],[11,"traverse","","",38,{"inputs":[{"name":"abstraversal"},{"name":"node"}],"output":{"name":"abstraversal"}}],[11,"next","collections::btree::map","",42,{"inputs":[{"name":"absiter"}],"output":{"name":"option"}}],[11,"size_hint","","",42,null],[11,"next_back","","",42,{"inputs":[{"name":"absiter"}],"output":{"name":"option"}}],[11,"clone","","",47,{"inputs":[{"name":"iter"}],"output":{"name":"iter"}}],[11,"next","","",47,{"inputs":[{"name":"iter"}],"output":{"name":"option"}}],[11,"size_hint","","",47,null],[11,"next_back","","",47,{"inputs":[{"name":"iter"}],"output":{"name":"option"}}],[11,"next","","",48,{"inputs":[{"name":"itermut"}],"output":{"name":"option"}}],[11,"size_hint","","",48,null],[11,"next_back","","",48,{"inputs":[{"name":"itermut"}],"output":{"name":"option"}}],[11,"next","","",49,{"inputs":[{"name":"intoiter"}],"output":{"name":"option"}}],[11,"size_hint","","",49,null],[11,"next_back","","",49,{"inputs":[{"name":"intoiter"}],"output":{"name":"option"}}],[11,"clone","","",50,{"inputs":[{"name":"keys"}],"output":{"name":"keys"}}],[11,"next","","",50,{"inputs":[{"name":"keys"}],"output":{"name":"option"}}],[11,"size_hint","","",50,null],[11,"next_back","","",50,{"inputs":[{"name":"keys"}],"output":{"name":"option"}}],[11,"clone","","",51,{"inputs":[{"name":"values"}],"output":{"name":"values"}}],[11,"next","","",51,{"inputs":[{"name":"values"}],"output":{"name":"option"}}],[11,"size_hint","","",51,null],[11,"next_back","","",51,{"inputs":[{"name":"values"}],"output":{"name":"option"}}],[11,"clone","","",52,{"inputs":[{"name":"range"}],"output":{"name":"range"}}],[11,"next","","",52,{"inputs":[{"name":"range"}],"output":{"name":"option"}}],[11,"next_back","","",52,{"inputs":[{"name":"range"}],"output":{"name":"option"}}],[11,"next","","",53,{"inputs":[{"name":"rangemut"}],"output":{"name":"option"}}],[11,"next_back","","",53,{"inputs":[{"name":"rangemut"}],"output":{"name":"option"}}],[11,"or_insert","","Ensures a value is in the entry by inserting the default if empty, and returns\na mutable reference to the value in the entry.",54,{"inputs":[{"name":"entry"},{"name":"v"}],"output":{"name":"v"}}],[11,"or_insert_with","","Ensures a value is in the entry by inserting the result of the default function if empty,\nand returns a mutable reference to the value in the entry.",54,{"inputs":[{"name":"entry"},{"name":"f"}],"output":{"name":"v"}}],[11,"insert","","Sets the value of the entry with the VacantEntry's key,\nand returns a mutable reference to it.",55,{"inputs":[{"name":"vacantentry"},{"name":"v"}],"output":{"name":"v"}}],[11,"get","","Gets a reference to the value in the entry.",56,{"inputs":[{"name":"occupiedentry"}],"output":{"name":"v"}}],[11,"get_mut","","Gets a mutable reference to the value in the entry.",56,{"inputs":[{"name":"occupiedentry"}],"output":{"name":"v"}}],[11,"into_mut","","Converts the entry into a mutable reference to its value.",56,{"inputs":[{"name":"occupiedentry"}],"output":{"name":"v"}}],[11,"insert","","Sets the value of the entry with the OccupiedEntry's key,\nand returns the entry's old value.",56,{"inputs":[{"name":"occupiedentry"},{"name":"v"}],"output":{"name":"v"}}],[11,"remove","","Takes the value of the entry out of the map, and returns it.",56,{"inputs":[{"name":"occupiedentry"}],"output":{"name":"v"}}],[11,"iter","","Gets an iterator over the entries of the map.",41,{"inputs":[{"name":"btreemap"}],"output":{"name":"iter"}}],[11,"iter_mut","","Gets a mutable iterator over the entries of the map.",41,{"inputs":[{"name":"btreemap"}],"output":{"name":"itermut"}}],[11,"keys","","Gets an iterator over the keys of the map.",41,{"inputs":[{"name":"btreemap"}],"output":{"name":"keys"}}],[11,"values","","Gets an iterator over the values of the map.",41,{"inputs":[{"name":"btreemap"}],"output":{"name":"values"}}],[11,"len","","Returns the number of elements in the map.",41,{"inputs":[{"name":"btreemap"}],"output":{"name":"usize"}}],[11,"is_empty","","Returns true if the map contains no elements.",41,{"inputs":[{"name":"btreemap"}],"output":{"name":"bool"}}],[11,"range","","Constructs a double-ended iterator over a sub-range of elements in the map, starting\nat min, and ending at max. If min is `Unbounded`, then it will be treated as \"negative\ninfinity\", and if max is `Unbounded`, then it will be treated as \"positive infinity\".\nThus range(Unbounded, Unbounded) will yield the whole collection.",41,{"inputs":[{"name":"btreemap"},{"name":"bound"},{"name":"bound"}],"output":{"name":"range"}}],[11,"range_mut","","Constructs a mutable double-ended iterator over a sub-range of elements in the map, starting\nat min, and ending at max. If min is `Unbounded`, then it will be treated as \"negative\ninfinity\", and if max is `Unbounded`, then it will be treated as \"positive infinity\".\nThus range(Unbounded, Unbounded) will yield the whole collection.",41,{"inputs":[{"name":"btreemap"},{"name":"bound"},{"name":"bound"}],"output":{"name":"rangemut"}}],[11,"entry","","Gets the given key's corresponding entry in the map for in-place manipulation.",41,{"inputs":[{"name":"btreemap"},{"name":"k"}],"output":{"name":"entry"}}],[11,"partial_cmp","collections::btree::set","",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"option"}}],[11,"lt","","",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"bool"}}],[11,"le","","",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"bool"}}],[11,"gt","","",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"bool"}}],[11,"ge","","",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"bool"}}],[11,"cmp","","",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"ordering"}}],[11,"assert_receiver_is_total_eq","","",57,null],[11,"eq","","",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"bool"}}],[11,"ne","","",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"bool"}}],[11,"hash","","",57,null],[11,"clone","","",57,{"inputs":[{"name":"btreeset"}],"output":{"name":"btreeset"}}],[11,"new","","Makes a new BTreeSet with a reasonable choice of B.",57,{"inputs":[{"name":"btreeset"}],"output":{"name":"btreeset"}}],[11,"with_b","","Makes a new BTreeSet with the given B.",57,{"inputs":[{"name":"btreeset"},{"name":"usize"}],"output":{"name":"btreeset"}}],[11,"iter","","Gets an iterator over the BTreeSet's contents.",57,{"inputs":[{"name":"btreeset"}],"output":{"name":"iter"}}],[11,"range","","Constructs a double-ended iterator over a sub-range of elements in the set, starting\nat min, and ending at max. If min is `Unbounded`, then it will be treated as \"negative\ninfinity\", and if max is `Unbounded`, then it will be treated as \"positive infinity\".\nThus range(Unbounded, Unbounded) will yield the whole collection.",57,{"inputs":[{"name":"btreeset"},{"name":"bound"},{"name":"bound"}],"output":{"name":"range"}}],[11,"difference","","Visits the values representing the difference, in ascending order.",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"difference"}}],[11,"symmetric_difference","","Visits the values representing the symmetric difference, in ascending order.",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"symmetricdifference"}}],[11,"intersection","","Visits the values representing the intersection, in ascending order.",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"intersection"}}],[11,"union","","Visits the values representing the union, in ascending order.",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"union"}}],[11,"len","","Returns the number of elements in the set.",57,{"inputs":[{"name":"btreeset"}],"output":{"name":"usize"}}],[11,"is_empty","","Returns true if the set contains no elements.",57,{"inputs":[{"name":"btreeset"}],"output":{"name":"bool"}}],[11,"clear","","Clears the set, removing all values.",57,null],[11,"contains","","Returns `true` if the set contains a value.",57,{"inputs":[{"name":"btreeset"},{"name":"q"}],"output":{"name":"bool"}}],[11,"get","","Returns a reference to the value in the set, if any, that is equal to the given value.",57,{"inputs":[{"name":"btreeset"},{"name":"q"}],"output":{"name":"option"}}],[11,"is_disjoint","","Returns `true` if the set has no elements in common with `other`.\nThis is equivalent to checking for an empty intersection.",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"bool"}}],[11,"is_subset","","Returns `true` if the set is a subset of another.",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"bool"}}],[11,"is_superset","","Returns `true` if the set is a superset of another.",57,{"inputs":[{"name":"btreeset"},{"name":"btreeset"}],"output":{"name":"bool"}}],[11,"insert","","Adds a value to the set.",57,{"inputs":[{"name":"btreeset"},{"name":"t"}],"output":{"name":"bool"}}],[11,"replace","","Adds a value to the set, replacing the existing value, if any, that is equal to the given\none. Returns the replaced value.",57,{"inputs":[{"name":"btreeset"},{"name":"t"}],"output":{"name":"option"}}],[11,"remove","","Removes a value from the set. Returns `true` if the value was\npresent in the set.",57,{"inputs":[{"name":"btreeset"},{"name":"q"}],"output":{"name":"bool"}}],[11,"take","","Removes and returns the value in the set, if any, that is equal to the given one.",57,{"inputs":[{"name":"btreeset"},{"name":"q"}],"output":{"name":"option"}}],[11,"from_iter","","",57,{"inputs":[{"name":"btreeset"},{"name":"i"}],"output":{"name":"btreeset"}}],[11,"into_iter","","Gets an iterator for moving out the BtreeSet's contents.",57,{"inputs":[{"name":"btreeset"}],"output":{"name":"intoiter"}}],[11,"extend","","",57,null],[11,"extend","","",57,null],[11,"default","","",57,{"inputs":[{"name":"btreeset"}],"output":{"name":"btreeset"}}],[11,"fmt","","",57,{"inputs":[{"name":"btreeset"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","","",58,{"inputs":[{"name":"iter"}],"output":{"name":"iter"}}],[11,"next","","",58,{"inputs":[{"name":"iter"}],"output":{"name":"option"}}],[11,"size_hint","","",58,null],[11,"next_back","","",58,{"inputs":[{"name":"iter"}],"output":{"name":"option"}}],[11,"next","","",59,{"inputs":[{"name":"intoiter"}],"output":{"name":"option"}}],[11,"size_hint","","",59,null],[11,"next_back","","",59,{"inputs":[{"name":"intoiter"}],"output":{"name":"option"}}],[11,"clone","","",60,{"inputs":[{"name":"range"}],"output":{"name":"range"}}],[11,"next","","",60,{"inputs":[{"name":"range"}],"output":{"name":"option"}}],[11,"next_back","","",60,{"inputs":[{"name":"range"}],"output":{"name":"option"}}],[11,"clone","","",61,{"inputs":[{"name":"difference"}],"output":{"name":"difference"}}],[11,"next","","",61,{"inputs":[{"name":"difference"}],"output":{"name":"option"}}],[11,"clone","","",62,{"inputs":[{"name":"symmetricdifference"}],"output":{"name":"symmetricdifference"}}],[11,"next","","",62,{"inputs":[{"name":"symmetricdifference"}],"output":{"name":"option"}}],[11,"clone","","",63,{"inputs":[{"name":"intersection"}],"output":{"name":"intersection"}}],[11,"next","","",63,{"inputs":[{"name":"intersection"}],"output":{"name":"option"}}],[11,"clone","","",64,{"inputs":[{"name":"union"}],"output":{"name":"union"}}],[11,"next","","",64,{"inputs":[{"name":"union"}],"output":{"name":"option"}}],[11,"borrow","collections::borrow","",21,{"inputs":[{"name":"cow"}],"output":{"name":"b"}}],[11,"clone","","",21,{"inputs":[{"name":"cow"}],"output":{"name":"cow"}}],[11,"to_mut","","Acquires a mutable reference to the owned form of the data.",21,null],[11,"into_owned","","Extracts the owned data.",21,null],[11,"deref","","",21,{"inputs":[{"name":"cow"}],"output":{"name":"b"}}],[11,"cmp","","",21,{"inputs":[{"name":"cow"},{"name":"cow"}],"output":{"name":"ordering"}}],[11,"eq","","",21,{"inputs":[{"name":"cow"},{"name":"cow"}],"output":{"name":"bool"}}],[11,"partial_cmp","","",21,{"inputs":[{"name":"cow"},{"name":"cow"}],"output":{"name":"option"}}],[11,"fmt","","",21,{"inputs":[{"name":"cow"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"fmt","","",21,{"inputs":[{"name":"cow"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"hash","","",21,null],[11,"into_cow","","",21,{"inputs":[{"name":"cow"}],"output":{"name":"cow"}}],[11,"as_ref","","",21,{"inputs":[{"name":"cow"}],"output":{"name":"t"}}],[11,"hash","collections::enum_set","",65,null],[11,"cmp","","",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"ordering"}}],[11,"partial_cmp","","",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"option"}}],[11,"lt","","",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"bool"}}],[11,"le","","",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"bool"}}],[11,"gt","","",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"bool"}}],[11,"ge","","",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"bool"}}],[11,"assert_receiver_is_total_eq","","",65,null],[11,"eq","","",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"bool"}}],[11,"ne","","",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"bool"}}],[11,"clone","","",65,{"inputs":[{"name":"enumset"}],"output":{"name":"enumset"}}],[11,"fmt","","",65,{"inputs":[{"name":"enumset"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"new","","Returns an empty `EnumSet`.",65,{"inputs":[{"name":"enumset"}],"output":{"name":"enumset"}}],[11,"len","","Returns the number of elements in the given `EnumSet`.",65,{"inputs":[{"name":"enumset"}],"output":{"name":"usize"}}],[11,"is_empty","","Returns true if the `EnumSet` is empty.",65,{"inputs":[{"name":"enumset"}],"output":{"name":"bool"}}],[11,"clear","","",65,null],[11,"is_disjoint","","Returns `false` if the `EnumSet` contains any enum of the given `EnumSet`.",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"bool"}}],[11,"is_superset","","Returns `true` if a given `EnumSet` is included in this `EnumSet`.",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"bool"}}],[11,"is_subset","","Returns `true` if this `EnumSet` is included in the given `EnumSet`.",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"bool"}}],[11,"union","","Returns the union of both `EnumSets`.",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"enumset"}}],[11,"intersection","","Returns the intersection of both `EnumSets`.",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"enumset"}}],[11,"insert","","Adds an enum to the `EnumSet`, and returns `true` if it wasn't there before",65,{"inputs":[{"name":"enumset"},{"name":"e"}],"output":{"name":"bool"}}],[11,"remove","","Removes an enum from the EnumSet",65,{"inputs":[{"name":"enumset"},{"name":"e"}],"output":{"name":"bool"}}],[11,"contains","","Returns `true` if an `EnumSet` contains a given enum.",65,{"inputs":[{"name":"enumset"},{"name":"e"}],"output":{"name":"bool"}}],[11,"iter","","Returns an iterator over an `EnumSet`.",65,{"inputs":[{"name":"enumset"}],"output":{"name":"iter"}}],[11,"sub","","",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"enumset"}}],[11,"bitor","","",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"enumset"}}],[11,"bitand","","",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"enumset"}}],[11,"bitxor","","",65,{"inputs":[{"name":"enumset"},{"name":"enumset"}],"output":{"name":"enumset"}}],[11,"clone","","",66,{"inputs":[{"name":"iter"}],"output":{"name":"iter"}}],[11,"next","","",66,{"inputs":[{"name":"iter"}],"output":{"name":"option"}}],[11,"size_hint","","",66,null],[11,"from_iter","","",65,{"inputs":[{"name":"enumset"},{"name":"i"}],"output":{"name":"enumset"}}],[11,"extend","","",65,null],[11,"extend","","",65,null],[11,"clone","core::fmt::rt::v1","",67,{"inputs":[{"name":"argument"}],"output":{"name":"argument"}}],[11,"clone","","",68,{"inputs":[{"name":"formatspec"}],"output":{"name":"formatspec"}}],[11,"eq","","",69,{"inputs":[{"name":"alignment"},{"name":"alignment"}],"output":{"name":"bool"}}],[11,"ne","","",69,{"inputs":[{"name":"alignment"},{"name":"alignment"}],"output":{"name":"bool"}}],[11,"clone","","",69,{"inputs":[{"name":"alignment"}],"output":{"name":"alignment"}}],[11,"clone","","",70,{"inputs":[{"name":"count"}],"output":{"name":"count"}}],[11,"clone","","",71,{"inputs":[{"name":"position"}],"output":{"name":"position"}}],[11,"clone","collections::linked_list","",72,{"inputs":[{"name":"iter"}],"output":{"name":"iter"}}],[11,"clone","","",73,{"inputs":[{"name":"intoiter"}],"output":{"name":"intoiter"}}],[11,"from","","",74,{"inputs":[{"name":"rawlink"},{"name":"option"}],"output":{"name":"rawlink"}}],[11,"clone","","",74,{"inputs":[{"name":"rawlink"}],"output":{"name":"rawlink"}}],[11,"default","","",75,{"inputs":[{"name":"linkedlist"}],"output":{"name":"linkedlist"}}],[11,"new","","Creates an empty `LinkedList`.",75,{"inputs":[{"name":"linkedlist"}],"output":{"name":"linkedlist"}}],[11,"append","","Moves all elements from `other` to the end of the list.",75,null],[11,"iter","","Provides a forward iterator.",75,{"inputs":[{"name":"linkedlist"}],"output":{"name":"iter"}}],[11,"iter_mut","","Provides a forward iterator with mutable references.",75,{"inputs":[{"name":"linkedlist"}],"output":{"name":"itermut"}}],[11,"is_empty","","Returns `true` if the `LinkedList` is empty.",75,{"inputs":[{"name":"linkedlist"}],"output":{"name":"bool"}}],[11,"len","","Returns the length of the `LinkedList`.",75,{"inputs":[{"name":"linkedlist"}],"output":{"name":"usize"}}],[11,"clear","","Removes all elements from the `LinkedList`.",75,null],[11,"front","","Provides a reference to the front element, or `None` if the list is\nempty.",75,{"inputs":[{"name":"linkedlist"}],"output":{"name":"option"}}],[11,"front_mut","","Provides a mutable reference to the front element, or `None` if the list\nis empty.",75,{"inputs":[{"name":"linkedlist"}],"output":{"name":"option"}}],[11,"back","","Provides a reference to the back element, or `None` if the list is\nempty.",75,{"inputs":[{"name":"linkedlist"}],"output":{"name":"option"}}],[11,"back_mut","","Provides a mutable reference to the back element, or `None` if the list\nis empty.",75,{"inputs":[{"name":"linkedlist"}],"output":{"name":"option"}}],[11,"push_front","","Adds an element first in the list.",75,null],[11,"pop_front","","Removes the first element and returns it, or `None` if the list is\nempty.",75,{"inputs":[{"name":"linkedlist"}],"output":{"name":"option"}}],[11,"push_back","","Appends an element to the back of a list",75,null],[11,"pop_back","","Removes the last element from a list and returns it, or `None` if\nit is empty.",75,{"inputs":[{"name":"linkedlist"}],"output":{"name":"option"}}],[11,"split_off","","Splits the list into two at the given index. Returns everything after the given index,\nincluding the index.",75,{"inputs":[{"name":"linkedlist"},{"name":"usize"}],"output":{"name":"linkedlist"}}],[11,"drop","","",75,null],[11,"next","","",72,{"inputs":[{"name":"iter"}],"output":{"name":"option"}}],[11,"size_hint","","",72,null],[11,"next_back","","",72,{"inputs":[{"name":"iter"}],"output":{"name":"option"}}],[11,"next","","",76,{"inputs":[{"name":"itermut"}],"output":{"name":"option"}}],[11,"size_hint","","",76,null],[11,"next_back","","",76,{"inputs":[{"name":"itermut"}],"output":{"name":"option"}}],[11,"insert_next","","Inserts `elt` just after the element most recently returned by `.next()`.\nThe inserted element does not appear in the iteration.",76,null],[11,"peek_next","","Provides a reference to the next element, without changing the iterator.",76,{"inputs":[{"name":"itermut"}],"output":{"name":"option"}}],[11,"next","","",73,{"inputs":[{"name":"intoiter"}],"output":{"name":"option"}}],[11,"size_hint","","",73,null],[11,"next_back","","",73,{"inputs":[{"name":"intoiter"}],"output":{"name":"option"}}],[11,"from_iter","","",75,{"inputs":[{"name":"linkedlist"},{"name":"t"}],"output":{"name":"linkedlist"}}],[11,"into_iter","","Consumes the list into an iterator yielding elements by value.",75,{"inputs":[{"name":"linkedlist"}],"output":{"name":"intoiter"}}],[11,"extend","","",75,null],[11,"extend","","",75,null],[11,"eq","","",75,{"inputs":[{"name":"linkedlist"},{"name":"linkedlist"}],"output":{"name":"bool"}}],[11,"ne","","",75,{"inputs":[{"name":"linkedlist"},{"name":"linkedlist"}],"output":{"name":"bool"}}],[11,"partial_cmp","","",75,{"inputs":[{"name":"linkedlist"},{"name":"linkedlist"}],"output":{"name":"option"}}],[11,"cmp","","",75,{"inputs":[{"name":"linkedlist"},{"name":"linkedlist"}],"output":{"name":"ordering"}}],[11,"clone","","",75,{"inputs":[{"name":"linkedlist"}],"output":{"name":"linkedlist"}}],[11,"fmt","","",75,{"inputs":[{"name":"linkedlist"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"hash","","",75,null],[11,"start","core::ops","",77,{"inputs":[{"name":"rangefrom"}],"output":{"name":"option"}}],[11,"end","","",78,{"inputs":[{"name":"rangeto"}],"output":{"name":"option"}}],[11,"start","","",79,{"inputs":[{"name":"range"}],"output":{"name":"option"}}],[11,"end","","",79,{"inputs":[{"name":"range"}],"output":{"name":"option"}}],[11,"borrow","collections::vec","",20,null],[11,"borrow_mut","","",20,null],[11,"clone","collections::str","",80,{"inputs":[{"name":"utf16units"}],"output":{"name":"utf16units"}}],[11,"next","","",80,{"inputs":[{"name":"utf16units"}],"output":{"name":"option"}}],[11,"size_hint","","",80,null],[11,"borrow","collections::string","",81,{"inputs":[{"name":"string"}],"output":{"name":"str"}}],[11,"fmt","core::str::pattern","",82,{"inputs":[{"name":"searchstep"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"eq","","",82,{"inputs":[{"name":"searchstep"},{"name":"searchstep"}],"output":{"name":"bool"}}],[11,"ne","","",82,{"inputs":[{"name":"searchstep"},{"name":"searchstep"}],"output":{"name":"bool"}}],[11,"assert_receiver_is_total_eq","","",82,null],[11,"clone","","",82,{"inputs":[{"name":"searchstep"}],"output":{"name":"searchstep"}}],[11,"clone","","",83,{"inputs":[{"name":"chareqsearcher"}],"output":{"name":"chareqsearcher"}}],[11,"into_searcher","","",84,{"inputs":[{"name":"chareqpattern"},{"name":"str"}],"output":{"name":"chareqsearcher"}}],[11,"haystack","","",83,{"inputs":[{"name":"chareqsearcher"}],"output":{"name":"str"}}],[11,"next","","",83,{"inputs":[{"name":"chareqsearcher"}],"output":{"name":"searchstep"}}],[11,"next_back","","",83,{"inputs":[{"name":"chareqsearcher"}],"output":{"name":"searchstep"}}],[11,"clone","","",85,{"inputs":[{"name":"charsearcher"}],"output":{"name":"charsearcher"}}],[11,"haystack","","",85,{"inputs":[{"name":"charsearcher"}],"output":{"name":"str"}}],[11,"next","","",85,{"inputs":[{"name":"charsearcher"}],"output":{"name":"searchstep"}}],[11,"next_match","","",85,{"inputs":[{"name":"charsearcher"}],"output":{"name":"option"}}],[11,"next_reject","","",85,{"inputs":[{"name":"charsearcher"}],"output":{"name":"option"}}],[11,"next_back","","",85,{"inputs":[{"name":"charsearcher"}],"output":{"name":"searchstep"}}],[11,"next_match_back","","",85,{"inputs":[{"name":"charsearcher"}],"output":{"name":"option"}}],[11,"next_reject_back","","",85,{"inputs":[{"name":"charsearcher"}],"output":{"name":"option"}}],[11,"clone","","",86,{"inputs":[{"name":"charslicesearcher"}],"output":{"name":"charslicesearcher"}}],[11,"haystack","","",86,{"inputs":[{"name":"charslicesearcher"}],"output":{"name":"str"}}],[11,"next","","",86,{"inputs":[{"name":"charslicesearcher"}],"output":{"name":"searchstep"}}],[11,"next_match","","",86,{"inputs":[{"name":"charslicesearcher"}],"output":{"name":"option"}}],[11,"next_reject","","",86,{"inputs":[{"name":"charslicesearcher"}],"output":{"name":"option"}}],[11,"next_back","","",86,{"inputs":[{"name":"charslicesearcher"}],"output":{"name":"searchstep"}}],[11,"next_match_back","","",86,{"inputs":[{"name":"charslicesearcher"}],"output":{"name":"option"}}],[11,"next_reject_back","","",86,{"inputs":[{"name":"charslicesearcher"}],"output":{"name":"option"}}],[11,"clone","","",87,{"inputs":[{"name":"charpredicatesearcher"}],"output":{"name":"charpredicatesearcher"}}],[11,"haystack","","",87,{"inputs":[{"name":"charpredicatesearcher"}],"output":{"name":"str"}}],[11,"next","","",87,{"inputs":[{"name":"charpredicatesearcher"}],"output":{"name":"searchstep"}}],[11,"next_match","","",87,{"inputs":[{"name":"charpredicatesearcher"}],"output":{"name":"option"}}],[11,"next_reject","","",87,{"inputs":[{"name":"charpredicatesearcher"}],"output":{"name":"option"}}],[11,"next_back","","",87,{"inputs":[{"name":"charpredicatesearcher"}],"output":{"name":"searchstep"}}],[11,"next_match_back","","",87,{"inputs":[{"name":"charpredicatesearcher"}],"output":{"name":"option"}}],[11,"next_reject_back","","",87,{"inputs":[{"name":"charpredicatesearcher"}],"output":{"name":"option"}}],[11,"fmt","","",88,{"inputs":[{"name":"strsearcher"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","","",88,{"inputs":[{"name":"strsearcher"}],"output":{"name":"strsearcher"}}],[11,"fmt","","",89,{"inputs":[{"name":"strsearcherimpl"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","","",89,{"inputs":[{"name":"strsearcherimpl"}],"output":{"name":"strsearcherimpl"}}],[11,"fmt","","",90,{"inputs":[{"name":"emptyneedle"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","","",90,{"inputs":[{"name":"emptyneedle"}],"output":{"name":"emptyneedle"}}],[11,"haystack","","",88,{"inputs":[{"name":"strsearcher"}],"output":{"name":"str"}}],[11,"next","","",88,{"inputs":[{"name":"strsearcher"}],"output":{"name":"searchstep"}}],[11,"next_match","","",88,{"inputs":[{"name":"strsearcher"}],"output":{"name":"option"}}],[11,"next_back","","",88,{"inputs":[{"name":"strsearcher"}],"output":{"name":"searchstep"}}],[11,"next_match_back","","",88,{"inputs":[{"name":"strsearcher"}],"output":{"name":"option"}}],[11,"fmt","","",91,{"inputs":[{"name":"twowaysearcher"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","","",91,{"inputs":[{"name":"twowaysearcher"}],"output":{"name":"twowaysearcher"}}],[11,"use_early_reject","","",92,{"inputs":[{"name":"matchonly"}],"output":{"name":"bool"}}],[11,"rejecting","","",92,null],[11,"matching","","",92,null],[11,"use_early_reject","","",93,{"inputs":[{"name":"rejectandmatch"}],"output":{"name":"bool"}}],[11,"rejecting","","",93,null],[11,"matching","","",93,null],[11,"cmp","collections::string","",81,{"inputs":[{"name":"string"},{"name":"string"}],"output":{"name":"ordering"}}],[11,"assert_receiver_is_total_eq","","",81,null],[11,"partial_cmp","","",81,{"inputs":[{"name":"string"},{"name":"string"}],"output":{"name":"option"}}],[11,"lt","","",81,{"inputs":[{"name":"string"},{"name":"string"}],"output":{"name":"bool"}}],[11,"le","","",81,{"inputs":[{"name":"string"},{"name":"string"}],"output":{"name":"bool"}}],[11,"gt","","",81,{"inputs":[{"name":"string"},{"name":"string"}],"output":{"name":"bool"}}],[11,"ge","","",81,{"inputs":[{"name":"string"},{"name":"string"}],"output":{"name":"bool"}}],[11,"fmt","","",94,{"inputs":[{"name":"fromutf8error"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"fmt","","",95,{"inputs":[{"name":"fromutf16error"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"new","","Creates a new string buffer initialized with the empty string.",81,{"inputs":[{"name":"string"}],"output":{"name":"string"}}],[11,"with_capacity","","Creates a new string buffer with the given capacity.\nThe string will be able to hold exactly `capacity` bytes without\nreallocating. If `capacity` is 0, the string will not allocate.",81,{"inputs":[{"name":"string"},{"name":"usize"}],"output":{"name":"string"}}],[11,"from_utf8","","Converts a vector of bytes to a `String`.",81,{"inputs":[{"name":"string"},{"name":"vec"}],"output":{"name":"result"}}],[11,"from_utf8_lossy","","Converts a slice of bytes to a `String`, including invalid characters.",81,null],[11,"from_utf16","","Decode a UTF-16 encoded vector `v` into a `String`, returning `None`\nif `v` contains any invalid data.",81,null],[11,"from_utf16_lossy","","Decode a UTF-16 encoded vector `v` into a string, replacing\ninvalid data with the replacement character (U+FFFD).",81,null],[11,"from_raw_parts","","Creates a new `String` from a length, capacity, and pointer.",81,null],[11,"from_utf8_unchecked","","Converts a vector of bytes to a `String` without checking that the\nstring contains valid UTF-8.",81,{"inputs":[{"name":"string"},{"name":"vec"}],"output":{"name":"string"}}],[11,"into_bytes","","Returns the underlying byte buffer, encoded as UTF-8.",81,{"inputs":[{"name":"string"}],"output":{"name":"vec"}}],[11,"as_str","","Extracts a string slice containing the entire string.",81,{"inputs":[{"name":"string"}],"output":{"name":"str"}}],[11,"push_str","","Pushes the given string onto this string buffer.",81,null],[11,"capacity","","Returns the number of bytes that this string buffer can hold without\nreallocating.",81,{"inputs":[{"name":"string"}],"output":{"name":"usize"}}],[11,"reserve","","Reserves capacity for at least `additional` more bytes to be inserted\nin the given `String`. The collection may reserve more space to avoid\nfrequent reallocations.",81,null],[11,"reserve_exact","","Reserves the minimum capacity for exactly `additional` more bytes to be\ninserted in the given `String`. Does nothing if the capacity is already\nsufficient.",81,null],[11,"shrink_to_fit","","Shrinks the capacity of this string buffer to match its length.",81,null],[11,"push","","Adds the given character to the end of the string.",81,null],[11,"as_bytes","","Works with the underlying buffer as a byte slice.",81,null],[11,"truncate","","Shortens a string to the specified length.",81,null],[11,"pop","","Removes the last character from the string buffer and returns it.\nReturns `None` if this string buffer is empty.",81,{"inputs":[{"name":"string"}],"output":{"name":"option"}}],[11,"remove","","Removes the character from the string buffer at byte position `idx` and\nreturns it.",81,{"inputs":[{"name":"string"},{"name":"usize"}],"output":{"name":"char"}}],[11,"insert","","Inserts a character into the string buffer at byte position `idx`.",81,null],[11,"as_mut_vec","","Views the string buffer as a mutable sequence of bytes.",81,{"inputs":[{"name":"string"}],"output":{"name":"vec"}}],[11,"len","","Returns the number of bytes in this string.",81,{"inputs":[{"name":"string"}],"output":{"name":"usize"}}],[11,"is_empty","","Returns true if the string contains no bytes",81,{"inputs":[{"name":"string"}],"output":{"name":"bool"}}],[11,"clear","","Truncates the string, returning it to 0 length.",81,null],[11,"drain","","Create a draining iterator that removes the specified range in the string\nand yields the removed chars from start to end. The element range is\nremoved even if the iterator is not consumed until the end.",81,{"inputs":[{"name":"string"},{"name":"r"}],"output":{"name":"drain"}}],[11,"into_boxed_str","","Converts the string into `Box<str>`.",81,{"inputs":[{"name":"string"}],"output":{"name":"box"}}],[11,"into_boxed_slice","","Converts the string into `Box<str>`.",81,{"inputs":[{"name":"string"}],"output":{"name":"box"}}],[11,"into_bytes","","Returns the bytes that were attempted to convert to a `String`.",94,{"inputs":[{"name":"fromutf8error"}],"output":{"name":"vec"}}],[11,"utf8_error","","Fetch a `Utf8Error` to get more details about the conversion failure.",94,{"inputs":[{"name":"fromutf8error"}],"output":{"name":"utf8error"}}],[11,"fmt","","",94,{"inputs":[{"name":"fromutf8error"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"fmt","","",95,{"inputs":[{"name":"fromutf16error"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","","",81,{"inputs":[{"name":"string"}],"output":{"name":"string"}}],[11,"clone_from","","",81,null],[11,"from_iter","","",81,{"inputs":[{"name":"string"},{"name":"i"}],"output":{"name":"string"}}],[11,"from_iter","","",81,{"inputs":[{"name":"string"},{"name":"i"}],"output":{"name":"string"}}],[11,"from_iter","","",81,{"inputs":[{"name":"string"},{"name":"i"}],"output":{"name":"string"}}],[11,"extend","","",81,null],[11,"extend","","",81,null],[11,"extend","","",81,null],[11,"extend","","",81,null],[11,"eq","","",81,{"inputs":[{"name":"string"},{"name":"string"}],"output":{"name":"bool"}}],[11,"ne","","",81,{"inputs":[{"name":"string"},{"name":"string"}],"output":{"name":"bool"}}],[11,"eq","","",81,{"inputs":[{"name":"string"},{"name":"str"}],"output":{"name":"bool"}}],[11,"ne","","",81,{"inputs":[{"name":"string"},{"name":"str"}],"output":{"name":"bool"}}],[11,"eq","","",81,{"inputs":[{"name":"string"},{"name":"str"}],"output":{"name":"bool"}}],[11,"ne","","",81,{"inputs":[{"name":"string"},{"name":"str"}],"output":{"name":"bool"}}],[11,"eq","collections::borrow","",21,{"inputs":[{"name":"cow"},{"name":"str"}],"output":{"name":"bool"}}],[11,"ne","","",21,{"inputs":[{"name":"cow"},{"name":"str"}],"output":{"name":"bool"}}],[11,"eq","","",21,{"inputs":[{"name":"cow"},{"name":"str"}],"output":{"name":"bool"}}],[11,"ne","","",21,{"inputs":[{"name":"cow"},{"name":"str"}],"output":{"name":"bool"}}],[11,"eq","","",21,{"inputs":[{"name":"cow"},{"name":"string"}],"output":{"name":"bool"}}],[11,"ne","","",21,{"inputs":[{"name":"cow"},{"name":"string"}],"output":{"name":"bool"}}],[11,"eq","collections::string","",81,{"inputs":[{"name":"string"},{"name":"cow"}],"output":{"name":"bool"}}],[11,"ne","","",81,{"inputs":[{"name":"string"},{"name":"cow"}],"output":{"name":"bool"}}],[11,"default","","",81,{"inputs":[{"name":"string"}],"output":{"name":"string"}}],[11,"fmt","","",81,{"inputs":[{"name":"string"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"fmt","","",81,{"inputs":[{"name":"string"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"hash","","",81,null],[11,"add","","",81,{"inputs":[{"name":"string"},{"name":"str"}],"output":{"name":"string"}}],[11,"index","","",81,{"inputs":[{"name":"string"},{"name":"range"}],"output":{"name":"str"}}],[11,"index","","",81,{"inputs":[{"name":"string"},{"name":"rangeto"}],"output":{"name":"str"}}],[11,"index","","",81,{"inputs":[{"name":"string"},{"name":"rangefrom"}],"output":{"name":"str"}}],[11,"index","","",81,{"inputs":[{"name":"string"},{"name":"rangefull"}],"output":{"name":"str"}}],[11,"index_mut","","",81,{"inputs":[{"name":"string"},{"name":"range"}],"output":{"name":"str"}}],[11,"index_mut","","",81,{"inputs":[{"name":"string"},{"name":"rangeto"}],"output":{"name":"str"}}],[11,"index_mut","","",81,{"inputs":[{"name":"string"},{"name":"rangefrom"}],"output":{"name":"str"}}],[11,"index_mut","","",81,{"inputs":[{"name":"string"},{"name":"rangefull"}],"output":{"name":"str"}}],[11,"deref","","",81,{"inputs":[{"name":"string"}],"output":{"name":"str"}}],[11,"deref_mut","","",81,{"inputs":[{"name":"string"}],"output":{"name":"str"}}],[11,"from_str","","",81,{"inputs":[{"name":"string"},{"name":"str"}],"output":{"name":"result"}}],[11,"clone","","",96,{"inputs":[{"name":"parseerror"}],"output":{"name":"parseerror"}}],[11,"fmt","","",96,{"inputs":[{"name":"parseerror"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"eq","","",96,{"inputs":[{"name":"parseerror"},{"name":"parseerror"}],"output":{"name":"bool"}}],[11,"as_ref","","",81,{"inputs":[{"name":"string"}],"output":{"name":"str"}}],[11,"as_ref","","",81,null],[11,"from","","",81,{"inputs":[{"name":"string"},{"name":"str"}],"output":{"name":"string"}}],[11,"from","collections::borrow","",21,{"inputs":[{"name":"cow"},{"name":"str"}],"output":{"name":"cow"}}],[11,"from","","",21,{"inputs":[{"name":"cow"},{"name":"string"}],"output":{"name":"cow"}}],[11,"into","collections::string","",81,{"inputs":[{"name":"string"}],"output":{"name":"vec"}}],[11,"into_cow","","",81,{"inputs":[{"name":"string"}],"output":{"name":"cow"}}],[11,"write_str","","",81,{"inputs":[{"name":"string"},{"name":"str"}],"output":{"name":"result"}}],[11,"write_char","","",81,{"inputs":[{"name":"string"},{"name":"char"}],"output":{"name":"result"}}],[11,"drop","","",97,null],[11,"next","","",97,{"inputs":[{"name":"drain"}],"output":{"name":"option"}}],[11,"size_hint","","",97,null],[11,"next_back","","",97,{"inputs":[{"name":"drain"}],"output":{"name":"option"}}],[11,"clone","collections::vec","",20,{"inputs":[{"name":"vec"}],"output":{"name":"vec"}}],[11,"clone_from","","",20,null],[11,"hash","","",20,null],[11,"index","","",20,{"inputs":[{"name":"vec"},{"name":"usize"}],"output":{"name":"t"}}],[11,"index_mut","","",20,{"inputs":[{"name":"vec"},{"name":"usize"}],"output":{"name":"t"}}],[11,"index","","",20,null],[11,"index","","",20,null],[11,"index","","",20,null],[11,"index","","",20,null],[11,"index_mut","","",20,null],[11,"index_mut","","",20,null],[11,"index_mut","","",20,null],[11,"index_mut","","",20,null],[11,"deref","","",20,null],[11,"deref_mut","","",20,null],[11,"from_iter","","",20,{"inputs":[{"name":"vec"},{"name":"i"}],"output":{"name":"vec"}}],[11,"into_iter","","Creates a consuming iterator, that is, one that moves each value out of\nthe vector (from start to end). The vector cannot be used after calling\nthis.",20,{"inputs":[{"name":"vec"}],"output":{"name":"intoiter"}}],[11,"extend","","",20,null],[11,"extend","","",20,null],[11,"eq","","",20,{"inputs":[{"name":"vec"},{"name":"vec"}],"output":{"name":"bool"}}],[11,"ne","","",20,{"inputs":[{"name":"vec"},{"name":"vec"}],"output":{"name":"bool"}}],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","collections::borrow","",21,null],[11,"ne","","",21,null],[11,"eq","","",21,null],[11,"ne","","",21,null],[11,"eq","","",21,{"inputs":[{"name":"cow"},{"name":"vec"}],"output":{"name":"bool"}}],[11,"ne","","",21,{"inputs":[{"name":"cow"},{"name":"vec"}],"output":{"name":"bool"}}],[11,"eq","collections::vec","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"partial_cmp","","",20,{"inputs":[{"name":"vec"},{"name":"vec"}],"output":{"name":"option"}}],[11,"cmp","","",20,{"inputs":[{"name":"vec"},{"name":"vec"}],"output":{"name":"ordering"}}],[11,"drop","","",20,null],[11,"default","","",20,{"inputs":[{"name":"vec"}],"output":{"name":"vec"}}],[11,"fmt","","",20,{"inputs":[{"name":"vec"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"as_ref","","",20,{"inputs":[{"name":"vec"}],"output":{"name":"vec"}}],[11,"as_mut","","",20,{"inputs":[{"name":"vec"}],"output":{"name":"vec"}}],[11,"as_ref","","",20,null],[11,"as_mut","","",20,null],[11,"from","","",20,null],[11,"from","","",20,{"inputs":[{"name":"vec"},{"name":"str"}],"output":{"name":"vec"}}],[11,"from_iter","collections::borrow","",21,{"inputs":[{"name":"cow"},{"name":"i"}],"output":{"name":"cow"}}],[11,"into_cow","collections::vec","",20,{"inputs":[{"name":"vec"}],"output":{"name":"cow"}}],[11,"next","","",98,{"inputs":[{"name":"intoiter"}],"output":{"name":"option"}}],[11,"size_hint","","",98,null],[11,"count","","",98,{"inputs":[{"name":"intoiter"}],"output":{"name":"usize"}}],[11,"next_back","","",98,{"inputs":[{"name":"intoiter"}],"output":{"name":"option"}}],[11,"drop","","",98,null],[11,"next","","",99,{"inputs":[{"name":"drain"}],"output":{"name":"option"}}],[11,"size_hint","","",99,null],[11,"next_back","","",99,{"inputs":[{"name":"drain"}],"output":{"name":"option"}}],[11,"drop","","",99,null],[11,"clone","collections::vec_deque","",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"vecdeque"}}],[11,"drop","","",100,null],[11,"default","","",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"vecdeque"}}],[11,"new","","Creates an empty `VecDeque`.",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"vecdeque"}}],[11,"with_capacity","","Creates an empty `VecDeque` with space for at least `n` elements.",100,{"inputs":[{"name":"vecdeque"},{"name":"usize"}],"output":{"name":"vecdeque"}}],[11,"get","","Retrieves an element in the `VecDeque` by index.",100,{"inputs":[{"name":"vecdeque"},{"name":"usize"}],"output":{"name":"option"}}],[11,"get_mut","","Retrieves an element in the `VecDeque` mutably by index.",100,{"inputs":[{"name":"vecdeque"},{"name":"usize"}],"output":{"name":"option"}}],[11,"swap","","Swaps elements at indices `i` and `j`.",100,null],[11,"capacity","","Returns the number of elements the `VecDeque` can hold without\nreallocating.",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"usize"}}],[11,"reserve_exact","","Reserves the minimum capacity for exactly `additional` more elements to be inserted in the\ngiven `VecDeque`. Does nothing if the capacity is already sufficient.",100,null],[11,"reserve","","Reserves capacity for at least `additional` more elements to be inserted in the given\n`VecDeque`. The collection may reserve more space to avoid frequent reallocations.",100,null],[11,"shrink_to_fit","","Shrinks the capacity of the `VecDeque` as much as possible.",100,null],[11,"truncate","","Shortens a `VecDeque`, dropping excess elements from the back.",100,null],[11,"iter","","Returns a front-to-back iterator.",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"iter"}}],[11,"iter_mut","","Returns a front-to-back iterator that returns mutable references.",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"itermut"}}],[11,"as_slices","","Returns a pair of slices which contain, in order, the contents of the\n`VecDeque`.",100,null],[11,"as_mut_slices","","Returns a pair of slices which contain, in order, the contents of the\n`VecDeque`.",100,null],[11,"len","","Returns the number of elements in the `VecDeque`.",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"usize"}}],[11,"is_empty","","Returns true if the buffer contains no elements",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"bool"}}],[11,"drain","","Create a draining iterator that removes the specified range in the\n`VecDeque` and yields the removed items from start to end. The element\nrange is removed even if the iterator is not consumed until the end.",100,{"inputs":[{"name":"vecdeque"},{"name":"r"}],"output":{"name":"drain"}}],[11,"clear","","Clears the buffer, removing all values.",100,null],[11,"front","","Provides a reference to the front element, or `None` if the sequence is\nempty.",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"option"}}],[11,"front_mut","","Provides a mutable reference to the front element, or `None` if the\nsequence is empty.",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"option"}}],[11,"back","","Provides a reference to the back element, or `None` if the sequence is\nempty.",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"option"}}],[11,"back_mut","","Provides a mutable reference to the back element, or `None` if the\nsequence is empty.",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"option"}}],[11,"pop_front","","Removes the first element and returns it, or `None` if the sequence is\nempty.",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"option"}}],[11,"push_front","","Inserts an element first in the sequence.",100,null],[11,"push_back","","Appends an element to the back of a buffer",100,null],[11,"pop_back","","Removes the last element from a buffer and returns it, or `None` if\nit is empty.",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"option"}}],[11,"swap_remove_back","","Removes an element from anywhere in the `VecDeque` and returns it, replacing it with the\nlast element.",100,{"inputs":[{"name":"vecdeque"},{"name":"usize"}],"output":{"name":"option"}}],[11,"swap_back_remove","","deprecated",100,{"inputs":[{"name":"vecdeque"},{"name":"usize"}],"output":{"name":"option"}}],[11,"swap_remove_front","","Removes an element from anywhere in the `VecDeque` and returns it,\nreplacing it with the first element.",100,{"inputs":[{"name":"vecdeque"},{"name":"usize"}],"output":{"name":"option"}}],[11,"swap_front_remove","","deprecated",100,{"inputs":[{"name":"vecdeque"},{"name":"usize"}],"output":{"name":"option"}}],[11,"insert","","Inserts an element at `index` within the `VecDeque`. Whichever\nend is closer to the insertion point will be moved to make room,\nand all the affected elements will be moved to new positions.",100,null],[11,"remove","","Removes and returns the element at `index` from the `VecDeque`.\nWhichever end is closer to the removal point will be moved to make\nroom, and all the affected elements will be moved to new positions.\nReturns `None` if `index` is out of bounds.",100,{"inputs":[{"name":"vecdeque"},{"name":"usize"}],"output":{"name":"option"}}],[11,"split_off","","Splits the collection into two at the given index.",100,{"inputs":[{"name":"vecdeque"},{"name":"usize"}],"output":{"name":"vecdeque"}}],[11,"append","","Moves all the elements of `other` into `Self`, leaving `other` empty.",100,null],[11,"retain","","Retains only the elements specified by the predicate.",100,null],[11,"resize","","Modifies the `VecDeque` in-place so that `len()` is equal to new_len,\neither by removing excess elements or by appending copies of a value to the back.",100,null],[11,"clone","","",101,{"inputs":[{"name":"iter"}],"output":{"name":"iter"}}],[11,"next","","",101,{"inputs":[{"name":"iter"}],"output":{"name":"option"}}],[11,"size_hint","","",101,null],[11,"next_back","","",101,{"inputs":[{"name":"iter"}],"output":{"name":"option"}}],[11,"next","","",102,{"inputs":[{"name":"itermut"}],"output":{"name":"option"}}],[11,"size_hint","","",102,null],[11,"next_back","","",102,{"inputs":[{"name":"itermut"}],"output":{"name":"option"}}],[11,"clone","","",103,{"inputs":[{"name":"intoiter"}],"output":{"name":"intoiter"}}],[11,"next","","",103,{"inputs":[{"name":"intoiter"}],"output":{"name":"option"}}],[11,"size_hint","","",103,null],[11,"next_back","","",103,{"inputs":[{"name":"intoiter"}],"output":{"name":"option"}}],[11,"drop","","",104,null],[11,"next","","",104,{"inputs":[{"name":"drain"}],"output":{"name":"option"}}],[11,"size_hint","","",104,null],[11,"next_back","","",104,{"inputs":[{"name":"drain"}],"output":{"name":"option"}}],[11,"eq","","",100,{"inputs":[{"name":"vecdeque"},{"name":"vecdeque"}],"output":{"name":"bool"}}],[11,"partial_cmp","","",100,{"inputs":[{"name":"vecdeque"},{"name":"vecdeque"}],"output":{"name":"option"}}],[11,"cmp","","",100,{"inputs":[{"name":"vecdeque"},{"name":"vecdeque"}],"output":{"name":"ordering"}}],[11,"hash","","",100,null],[11,"index","","",100,{"inputs":[{"name":"vecdeque"},{"name":"usize"}],"output":{"name":"a"}}],[11,"index_mut","","",100,{"inputs":[{"name":"vecdeque"},{"name":"usize"}],"output":{"name":"a"}}],[11,"from_iter","","",100,{"inputs":[{"name":"vecdeque"},{"name":"t"}],"output":{"name":"vecdeque"}}],[11,"into_iter","","Consumes the list into a front-to-back iterator yielding elements by\nvalue.",100,{"inputs":[{"name":"vecdeque"}],"output":{"name":"intoiter"}}],[11,"extend","","",100,null],[11,"extend","","",100,null],[11,"fmt","","",100,{"inputs":[{"name":"vecdeque"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"assert_receiver_is_total_eq","collections","",105,null],[11,"eq","","",105,{"inputs":[{"name":"bound"},{"name":"bound"}],"output":{"name":"bool"}}],[11,"ne","","",105,{"inputs":[{"name":"bound"},{"name":"bound"}],"output":{"name":"bool"}}],[11,"hash","","",105,null],[11,"fmt","","",105,{"inputs":[{"name":"bound"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","","",105,{"inputs":[{"name":"bound"}],"output":{"name":"bound"}}],[11,"clone","alloc::boxed","",106,{"inputs":[{"name":"exchangeheapsingleton"}],"output":{"name":"exchangeheapsingleton"}}],[11,"pointer","","",107,null],[11,"make_place","","",107,{"inputs":[{"name":"intermediatebox"}],"output":{"name":"intermediatebox"}}],[11,"finalize","","",107,{"inputs":[{"name":"intermediatebox"}],"output":{"name":"box"}}],[11,"finalize","","",108,{"inputs":[{"name":"box"},{"name":"intermediatebox"}],"output":{"name":"box"}}],[11,"make_place","","",106,{"inputs":[{"name":"exchangeheapsingleton"}],"output":{"name":"intermediatebox"}}],[11,"drop","","",107,null],[11,"new","","Allocates memory on the heap and then moves `x` into it.",108,{"inputs":[{"name":"box"},{"name":"t"}],"output":{"name":"box"}}],[11,"from_raw","","Constructs a box from the raw pointer.",108,null],[11,"into_raw","","Consumes the `Box`, returning the wrapped raw pointer.",108,null],[11,"default","","",108,{"inputs":[{"name":"box"}],"output":{"name":"box"}}],[11,"default","","",108,{"inputs":[{"name":"box"}],"output":{"name":"box"}}],[11,"clone","","Returns a new box with a `clone()` of this box's contents.",108,{"inputs":[{"name":"box"}],"output":{"name":"box"}}],[11,"clone_from","","Copies `source`'s contents into `self` without creating a new allocation.",108,null],[11,"clone","","",108,{"inputs":[{"name":"box"}],"output":{"name":"box"}}],[11,"eq","","",108,{"inputs":[{"name":"box"},{"name":"box"}],"output":{"name":"bool"}}],[11,"ne","","",108,{"inputs":[{"name":"box"},{"name":"box"}],"output":{"name":"bool"}}],[11,"partial_cmp","","",108,{"inputs":[{"name":"box"},{"name":"box"}],"output":{"name":"option"}}],[11,"lt","","",108,{"inputs":[{"name":"box"},{"name":"box"}],"output":{"name":"bool"}}],[11,"le","","",108,{"inputs":[{"name":"box"},{"name":"box"}],"output":{"name":"bool"}}],[11,"ge","","",108,{"inputs":[{"name":"box"},{"name":"box"}],"output":{"name":"bool"}}],[11,"gt","","",108,{"inputs":[{"name":"box"},{"name":"box"}],"output":{"name":"bool"}}],[11,"cmp","","",108,{"inputs":[{"name":"box"},{"name":"box"}],"output":{"name":"ordering"}}],[11,"hash","","",108,null],[11,"from","","",108,{"inputs":[{"name":"box"},{"name":"t"}],"output":{"name":"box"}}],[11,"downcast","","Attempt to downcast the box to a concrete type.",108,{"inputs":[{"name":"box"}],"output":{"name":"result"}}],[11,"downcast","","Attempt to downcast the box to a concrete type.",108,{"inputs":[{"name":"box"}],"output":{"name":"result"}}],[11,"fmt","","",108,{"inputs":[{"name":"box"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"fmt","","",108,{"inputs":[{"name":"box"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"fmt","","",108,{"inputs":[{"name":"box"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"deref","","",108,{"inputs":[{"name":"box"}],"output":{"name":"t"}}],[11,"deref_mut","","",108,{"inputs":[{"name":"box"}],"output":{"name":"t"}}],[11,"next","","",108,{"inputs":[{"name":"box"}],"output":{"name":"option"}}],[11,"size_hint","","",108,null],[11,"next_back","","",108,{"inputs":[{"name":"box"}],"output":{"name":"option"}}],[11,"call_once","","",108,{"inputs":[{"name":"box"},{"name":"a"}],"output":{"name":"r"}}],[11,"call_once","","",108,{"inputs":[{"name":"box"},{"name":"a"}],"output":{"name":"r"}}],[11,"clone","","",108,{"inputs":[{"name":"box"}],"output":{"name":"box"}}],[11,"borrow","","",108,{"inputs":[{"name":"box"}],"output":{"name":"t"}}],[11,"borrow_mut","","",108,{"inputs":[{"name":"box"}],"output":{"name":"t"}}],[11,"as_ref","","",108,{"inputs":[{"name":"box"}],"output":{"name":"t"}}],[11,"as_mut","","",108,{"inputs":[{"name":"box"}],"output":{"name":"t"}}],[11,"deref","websocket::header::protocol","",27,{"inputs":[{"name":"websocketprotocol"}],"output":{"name":"vec"}}],[11,"header_name","","",27,{"inputs":[{"name":"websocketprotocol"}],"output":{"name":"str"}}],[11,"parse_header","","",27,null],[11,"fmt_header","","",27,{"inputs":[{"name":"websocketprotocol"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","websocket::header::version","",109,{"inputs":[{"name":"websocketversion"}],"output":{"name":"websocketversion"}}],[11,"eq","","",109,{"inputs":[{"name":"websocketversion"},{"name":"websocketversion"}],"output":{"name":"bool"}}],[11,"ne","","",109,{"inputs":[{"name":"websocketversion"},{"name":"websocketversion"}],"output":{"name":"bool"}}],[11,"fmt","","",109,{"inputs":[{"name":"websocketversion"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"header_name","","",109,{"inputs":[{"name":"websocketversion"}],"output":{"name":"str"}}],[11,"parse_header","","",109,null],[11,"fmt_header","","",109,{"inputs":[{"name":"websocketversion"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"fmt","websocket::header::extensions","",110,{"inputs":[{"name":"websocketextensions"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","","",110,{"inputs":[{"name":"websocketextensions"}],"output":{"name":"websocketextensions"}}],[11,"eq","","",110,{"inputs":[{"name":"websocketextensions"},{"name":"websocketextensions"}],"output":{"name":"bool"}}],[11,"ne","","",110,{"inputs":[{"name":"websocketextensions"},{"name":"websocketextensions"}],"output":{"name":"bool"}}],[11,"deref","","",110,{"inputs":[{"name":"websocketextensions"}],"output":{"name":"vec"}}],[11,"fmt","","",111,{"inputs":[{"name":"extension"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","","",111,{"inputs":[{"name":"extension"}],"output":{"name":"extension"}}],[11,"eq","","",111,{"inputs":[{"name":"extension"},{"name":"extension"}],"output":{"name":"bool"}}],[11,"ne","","",111,{"inputs":[{"name":"extension"},{"name":"extension"}],"output":{"name":"bool"}}],[11,"new","","Creates a new extension with the given name",111,{"inputs":[{"name":"extension"},{"name":"string"}],"output":{"name":"extension"}}],[11,"from_str","","",111,{"inputs":[{"name":"extension"},{"name":"str"}],"output":{"name":"result"}}],[11,"fmt","","",111,{"inputs":[{"name":"extension"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"fmt","","",112,{"inputs":[{"name":"parameter"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","","",112,{"inputs":[{"name":"parameter"}],"output":{"name":"parameter"}}],[11,"eq","","",112,{"inputs":[{"name":"parameter"},{"name":"parameter"}],"output":{"name":"bool"}}],[11,"ne","","",112,{"inputs":[{"name":"parameter"},{"name":"parameter"}],"output":{"name":"bool"}}],[11,"new","","Creates a new parameter with the given name and value",112,{"inputs":[{"name":"parameter"},{"name":"string"},{"name":"option"}],"output":{"name":"parameter"}}],[11,"fmt","","",112,{"inputs":[{"name":"parameter"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"header_name","","",110,{"inputs":[{"name":"websocketextensions"}],"output":{"name":"str"}}],[11,"parse_header","","",110,null],[11,"fmt_header","","",110,{"inputs":[{"name":"websocketextensions"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"fmt","websocket::header::origin","",113,{"inputs":[{"name":"origin"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"clone","","",113,{"inputs":[{"name":"origin"}],"output":{"name":"origin"}}],[11,"eq","","",113,{"inputs":[{"name":"origin"},{"name":"origin"}],"output":{"name":"bool"}}],[11,"ne","","",113,{"inputs":[{"name":"origin"},{"name":"origin"}],"output":{"name":"bool"}}],[11,"deref","","",113,{"inputs":[{"name":"origin"}],"output":{"name":"string"}}],[11,"header_name","","",113,{"inputs":[{"name":"origin"}],"output":{"name":"str"}}],[11,"parse_header","","",113,null],[11,"fmt_header","","",113,{"inputs":[{"name":"origin"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"new","websocket::receiver","Create a new Receiver using the specified Reader.",114,{"inputs":[{"name":"receiver"},{"name":"r"},{"name":"bool"}],"output":{"name":"receiver"}}],[11,"get_ref","","Returns a reference to the underlying Reader.",114,{"inputs":[{"name":"receiver"}],"output":{"name":"bufreader"}}],[11,"get_mut","","Returns a mutable reference to the underlying Reader.",114,{"inputs":[{"name":"receiver"}],"output":{"name":"bufreader"}}],[11,"shutdown","","Closes the receiver side of the connection, will cause all pending and future IO to\nreturn immediately with an appropriate value.",114,{"inputs":[{"name":"receiver"}],"output":{"name":"result"}}],[11,"shutdown_all","","Shuts down both Sender and Receiver, will cause all pending and future IO to\nreturn immediately with an appropriate value.",114,{"inputs":[{"name":"receiver"}],"output":{"name":"result"}}],[11,"recv_dataframe","","Reads a single data frame from the remote endpoint.",114,{"inputs":[{"name":"receiver"}],"output":{"name":"result"}}],[11,"recv_message_dataframes","","Returns the data frames that constitute one message.",114,{"inputs":[{"name":"receiver"}],"output":{"name":"result"}}],[11,"new","websocket::sender","Create a new WebSocketSender using the specified Writer.",115,{"inputs":[{"name":"sender"},{"name":"w"},{"name":"bool"}],"output":{"name":"sender"}}],[11,"get_ref","","Returns a reference to the underlying Writer.",115,{"inputs":[{"name":"sender"}],"output":{"name":"w"}}],[11,"get_mut","","Returns a mutable reference to the underlying Writer.",115,{"inputs":[{"name":"sender"}],"output":{"name":"w"}}],[11,"shutdown","","Closes the sender side of the connection, will cause all pending and future IO to\nreturn immediately with an appropriate value.",115,{"inputs":[{"name":"sender"}],"output":{"name":"result"}}],[11,"shutdown_all","","Shuts down both Sender and Receiver, will cause all pending and future IO to\nreturn immediately with an appropriate value.",115,{"inputs":[{"name":"sender"}],"output":{"name":"result"}}],[11,"send_dataframe","","Sends a single data frame to the remote endpoint.",115,{"inputs":[{"name":"sender"},{"name":"d"}],"output":{"name":"result"}}],[3,"Server","webchat::chatserver::ws","Represents a WebSocket server which can work with either normal (non-secure) connections, or secure WebSocket connections.",null,null],[12,"inner","","",3,null],[12,"context","","",3,null],[3,"Message","","Represents a WebSocket message.",null,null],[12,"opcode","","Type of WebSocket message",19,null],[12,"cd_status_code","","Optional status code to send when closing a connection.\n(only used if this message is of Type::Close)",19,null],[12,"payload","","Main payload",19,null],[0,"sender","","The default implementation of a WebSocket Sender.",null,null],[3,"Sender","webchat::chatserver::ws::sender","A Sender that wraps a Writer and provides a default implementation using\nDataFrames and Messages.",null,null],[12,"inner","","",115,null],[12,"mask","","",115,null],[0,"receiver","webchat::chatserver::ws","The default implementation of a WebSocket Receiver.",null,null],[3,"Receiver","webchat::chatserver::ws::receiver","A Receiver that wraps a Reader and provides a default implementation using\nDataFrames and Messages.",null,null],[12,"inner","","",114,null],[12,"buffer","","",114,null],[12,"mask","","",114,null],[4,"Type","webchat::chatserver::ws","Valid types of messages (in the default implementation)",null,null],[13,"Text","","Message with UTF8 test",18,null],[13,"Binary","","Message containing binary data",18,null],[13,"Ping","","Ping message with data",18,null],[13,"Pong","","Pong message with data",18,null],[13,"Close","","Close connection message with optional reason",18,null],[3,"Connection","","Represents a connection to the server that has not been processed yet.",null,null],[3,"WebSocketProtocol","","Represents a Sec-WebSocket-Protocol header",null,null],[4,"WebSocketStream","","A useful stream type for carrying WebSocket connections.",null,null],[13,"Tcp","","A TCP stream.",24,null],[13,"Ssl","","An SSL-backed TCP Stream",24,null],[17,"WS_ADDR","webchat::chatserver","",null,null],[11,"clone","","",2,{"inputs":[{"name":"chataction"}],"output":{"name":"chataction"}}],[11,"fmt","","",2,{"inputs":[{"name":"chataction"},{"name":"formatter"}],"output":{"name":"result"}}],[11,"encode","","",2,{"inputs":[{"name":"chataction"},{"name":"__s"}],"output":{"name":"result"}}],[11,"decode","","",2,{"inputs":[{"name":"chataction"},{"name":"__d"}],"output":{"name":"result"}}]],"paths":[[8,"Sender"],[8,"Receiver"],[4,"ChatAction"],[3,"Server"],[3,"DataFrameIterator"],[3,"MessageIterator"],[3,"DataFrameFlags"],[3,"DataFrameHeader"],[3,"Masker"],[3,"Url"],[3,"Request"],[3,"Response"],[3,"Client"],[3,"Request"],[3,"Response"],[3,"Connection"],[3,"DataFrame"],[4,"Opcode"],[4,"Type"],[3,"Message"],[3,"Vec"],[4,"Cow"],[4,"WebSocketError"],[4,"WSUrlErrorKind"],[4,"WebSocketStream"],[3,"WebSocketAccept"],[3,"WebSocketKey"],[3,"WebSocketProtocol"],[3,"BinaryHeap"],[3,"Hole"],[3,"Iter"],[3,"IntoIter"],[3,"Drain"],[3,"RawItems"],[3,"Node"],[3,"Handle"],[3,"ElemsAndEdges"],[3,"MoveTraversalImpl"],[3,"AbsTraversal"],[3,"NodeSlice"],[3,"MutNodeSlice"],[3,"BTreeMap"],[3,"AbsIter"],[3,"IdRef"],[3,"PartialSearchStack"],[3,"Pusher"],[3,"SearchStack"],[3,"Iter"],[3,"IterMut"],[3,"IntoIter"],[3,"Keys"],[3,"Values"],[3,"Range"],[3,"RangeMut"],[4,"Entry"],[3,"VacantEntry"],[3,"OccupiedEntry"],[3,"BTreeSet"],[3,"Iter"],[3,"IntoIter"],[3,"Range"],[3,"Difference"],[3,"SymmetricDifference"],[3,"Intersection"],[3,"Union"],[3,"EnumSet"],[3,"Iter"],[3,"Argument"],[3,"FormatSpec"],[4,"Alignment"],[4,"Count"],[4,"Position"],[3,"Iter"],[3,"IntoIter"],[3,"Rawlink"],[3,"LinkedList"],[3,"IterMut"],[3,"RangeFrom"],[3,"RangeTo"],[3,"Range"],[3,"Utf16Units"],[3,"String"],[4,"SearchStep"],[3,"CharEqSearcher"],[3,"CharEqPattern"],[3,"CharSearcher"],[3,"CharSliceSearcher"],[3,"CharPredicateSearcher"],[3,"StrSearcher"],[4,"StrSearcherImpl"],[3,"EmptyNeedle"],[3,"TwoWaySearcher"],[4,"MatchOnly"],[4,"RejectAndMatch"],[3,"FromUtf8Error"],[3,"FromUtf16Error"],[4,"ParseError"],[3,"Drain"],[3,"IntoIter"],[3,"Drain"],[3,"VecDeque"],[3,"Iter"],[3,"IterMut"],[3,"IntoIter"],[3,"Drain"],[4,"Bound"],[3,"ExchangeHeapSingleton"],[3,"IntermediateBox"],[3,"Box"],[4,"WebSocketVersion"],[3,"WebSocketExtensions"],[3,"Extension"],[3,"Parameter"],[3,"Origin"],[3,"Receiver"],[3,"Sender"]]};
initSearch(searchIndex);