var searchIndex = {}; searchIndex["rotor_http"] = {"doc":"","items":[[4,"Accept","rotor_http","Socket acceptor State Machine",null,null],[13,"Server","","",0,null],[13,"Connection","","",0,null],[3,"Stream","","A main stream state machine abstaction",null,null],[4,"Version","","Represents a version of the HTTP spec.",null,null],[13,"Http10","","HTTP/1.0 protocol version.",1,null],[13,"Http11","","HTTP/1.1 protocol version as described in RFC7230 and others.",1,null],[13,"Http20","","HTTP/2 protocol version as described in RFC7540.",1,null],[0,"server","","HTTP Server implementation",null,null],[3,"Head","rotor_http::server","Request headers",null,null],[12,"client","","The client IP and port. If the connection is not using a standard\nTCP-IP connection this field will be `None`.",2,null],[12,"version","","The HTTP protocol version.",2,null],[12,"method","","The HTTP method. It is restricted to token chars.",2,null],[12,"scheme","","The HTTP scheme is a sequence of characters beginning with a\nletter and followed by any combination of letters, digits, plus,\nperiod or hyphen.",2,null],[12,"path","","The path points to a specific resource.",2,null],[12,"headers","","A slice of HTTP headers.",2,null],[12,"body_kind","","The body kind is either fixed, chunked or upgrade.",2,null],[3,"Response","","",null,null],[3,"Parser","","",null,null],[4,"RecvMode","","This type is returned from `headers_received` handler of either\nclient client or server protocol handler",null,null],[13,"Buffered","","Download whole message body (request or response) into the memory.",3,null],[13,"Progressive","","Fetch data chunk-by-chunk.",3,null],[11,"fmt","","",2,null],[11,"fmt","","",4,null],[11,"create","","",4,null],[11,"bytes_read","","",4,null],[11,"bytes_flushed","","",4,null],[11,"exception","","",4,null],[11,"timeout","","",4,null],[11,"wakeup","","",4,null],[11,"from","","",5,{"inputs":[{"name":"message"}],"output":{"name":"response"}}],[11,"new","","Creates new response message by extracting needed fields from Head",5,{"inputs":[{"name":"buf"},{"name":"version"},{"name":"bool"},{"name":"bool"}],"output":{"name":"response"}}],[11,"finish","","Returns true if it's okay too proceed with keep-alive connection",5,null],[11,"status","","Write status line",5,null],[11,"add_header","","Add header to message",5,null],[11,"add_length","","Add a content length to the message.",5,null],[11,"add_chunked","","Sets the transfer encoding to chunked.",5,null],[11,"is_started","","Returns true if at least `status()` method has been called",5,null],[11,"done_headers","","Checks the validity of headers. And returns `true` if entity\nbody is expected.",5,null],[11,"write_body","","Write a chunk of the body",5,null],[11,"is_complete","","Returns true if `done()` method is already called and everything\nwas okay.",5,null],[11,"done","","Writes needed final finalization data into the buffer and asserts\nthat response is in the appropriate state for that.",5,null],[17,"MAX_HEADERS_NUM","","Note httparse requires we preallocate array of this size so be wise",null,null],[17,"MAX_HEADERS_SIZE","","This one is not preallocated, but too large buffer is of limited use\nbecause of previous parameter.",null,null],[17,"MAX_CHUNK_HEAD","","Maximum length of chunk size line. it would be okay with 12 bytes, but in\ntheory there might be some extensions which we probably should skip",null,null],[8,"Context","","",null,null],[11,"emit_error_page","","",6,null],[11,"byte_timeout","","",6,null],[8,"Server","","A handler of server-side HTTP",null,null],[16,"Context","","",7,null],[10,"headers_received","","Encountered when headers received.",7,{"inputs":[{"name":"head"},{"name":"response"},{"name":"scope"}],"output":{"name":"option"}}],[10,"request_received","","Called when full request is received in buffered mode.",7,null],[11,"bad_request","","Called when request become invalid between `request_start()`\nand `request_received/request_end`",7,null],[10,"request_chunk","","Received chunk of data",7,null],[10,"request_end","","End of request body, only for Progressive requests",7,null],[10,"timeout","","Request timeout occurred",7,null],[10,"wakeup","","",7,null],[0,"client","rotor_http","HTTP Client implementation",null,null],[3,"Request","rotor_http::client","",null,null],[12,"1","","",8,null],[3,"Head","","",null,null],[12,"version","","",9,null],[12,"code","","",9,null],[12,"reason","","",9,null],[12,"headers","","",9,null],[12,"body_kind","","",9,null],[12,"close","","",9,null],[4,"RecvMode","","This type is returned from `headers_received` handler of either\nclient client or server protocol handler",null,null],[13,"Buffered","","Download whole message body (request or response) into the memory.",3,null],[13,"Progressive","","Fetch data chunk-by-chunk.",3,null],[5,"connect_tcp","","",null,{"inputs":[{"name":"scope"},{"name":"socketaddr"},{"name":"p"}],"output":{"name":"response"}}],[11,"from","","",8,{"inputs":[{"name":"message"}],"output":{"name":"request"}}],[11,"new","","Creates new response message by extracting needed fields from Head",8,{"inputs":[{"name":"buf"}],"output":{"name":"request"}}],[11,"start","","Write request line",8,null],[11,"add_header","","Add header to message",8,null],[11,"add_length","","Add a content length to the message.",8,null],[11,"add_chunked","","Sets the transfer encoding to chunked.",8,null],[11,"is_started","","Returns true if at least `status()` method has been called",8,null],[11,"done_headers","","Checks the validity of headers. And returns `true` if entity\nbody is expected.",8,null],[11,"write_body","","Write a chunk of the body",8,null],[11,"is_complete","","Returns true if `done()` method is already called and everything\nwas okay.",8,null],[11,"done","","Writes needed final finalization data into the buffer and asserts\nthat response is in the appropriate state for that.",8,null],[6,"Fsm","","",null,null],[17,"MAX_HEADERS_NUM","","Note httparse requires we preallocate array of this size so be wise",null,null],[17,"MAX_HEADERS_SIZE","","This one is not preallocated, but too large buffer is of limited use\nbecause of previous parameter.",null,null],[17,"MAX_CHUNK_HEAD","","Maximum length of chunk size line. it would be okay with 12 bytes, but in\ntheory there might be some extensions which we probably should skip",null,null],[8,"Client","","A handler of client-side HTTP",null,null],[16,"Context","","",10,null],[10,"prepare_request","","Populates a request",10,null],[10,"headers_received","","Encountered when headers received",10,null],[10,"response_received","","Called when full response is received in buffered mode",10,null],[11,"bad_response","","Called when response become invalid between `prepare_request()`\nand `response_received/response_end`",10,null],[10,"response_chunk","","Received chunk of data",10,null],[10,"response_end","","End of response body, only for Progressive responses",10,null],[10,"timeout","","Request timeout occured",10,null],[10,"wakeup","","",10,null],[8,"Context","","",null,null],[11,"byte_timeout","","",11,null],[11,"idle_timeout","","",11,null],[11,"eq","rotor_http::server","",3,null],[11,"ne","","",3,null],[11,"clone","","",3,null],[11,"fmt","","",3,null],[11,"partial_cmp","rotor_http","",1,null],[11,"eq","","",1,null],[11,"cmp","","",1,null],[11,"hash","","",1,null],[11,"fmt","","",1,null],[11,"clone","","",1,null],[11,"fmt","","",1,null],[6,"ServerFsm","","A shortcut type for server state machine",null,null],[11,"new","","",0,{"inputs":[{"name":"a"},{"name":"s"}],"output":{"name":"response"}}],[11,"accepted","","",12,null],[11,"transport","","Get a `Transport` object for the stream",12,null],[11,"new","","",12,null],[11,"connected","","",12,null],[11,"create","","",12,{"inputs":[{"name":"void"},{"name":"scope"}],"output":{"name":"response"}}],[11,"ready","","",12,null],[11,"spawned","","",12,null],[11,"timeout","","",12,null],[11,"wakeup","","",12,null],[11,"create","","",0,{"inputs":[{"name":"s"},{"name":"scope"}],"output":{"name":"response"}}],[11,"ready","","",0,null],[11,"spawned","","",0,null],[11,"timeout","","",0,null],[11,"wakeup","","",0,null],[11,"fmt","","",0,null],[11,"fmt","","",12,null],[11,"bad_request","rotor_http::server","Called when request become invalid between `request_start()`\nand `request_received/request_end`",7,null],[11,"emit_error_page","","",6,null],[11,"byte_timeout","","",6,null],[11,"bad_response","rotor_http::client","Called when response become invalid between `prepare_request()`\nand `response_received/response_end`",10,null],[11,"byte_timeout","","",11,null],[11,"idle_timeout","","",11,null]],"paths":[[4,"Accept"],[4,"Version"],[3,"Head"],[4,"RecvMode"],[3,"Parser"],[3,"Response"],[8,"Context"],[8,"Server"],[3,"Request"],[3,"Head"],[8,"Client"],[8,"Context"],[3,"Stream"]]}; initSearch(searchIndex);