Crate httparse [−] [src]
httparse
A push library for parsing HTTP/1.x requests and responses.
The focus is on speed and safety. Unsafe code is used to keep parsing fast,
but unsafety is contained in a submodule, with invariants enforced. The
parsing internals use an Iterator
instead of direct indexing, while
skipping bounds checks.
With Rust 1.27.0 or later, support for SIMD is enabled automatically.
If building an executable to be run on multiple platforms, and thus
not passing target_feature
or target_cpu
flags to the compiler,
runtime detection can still detect SSE4.2 or AVX2 support to provide
massive wins.
If compiling for a specific target, remembering to include
-C target_cpu=native
allows the detection to become compile time checks,
making it even faster.
Structs
Header |
Represents a parsed header. |
InvalidChunkSize |
An error in parsing a chunk size. |
Request |
A parsed Request. |
Response |
A parsed Response. |
Enums
Error |
An error in parsing. |
Status |
The result of a successful parse pass. |
Constants
EMPTY_HEADER |
An empty header, useful for constructing a |
Functions
parse_chunk_size |
Parse a buffer of bytes as a chunk size. |
parse_headers |
Parse a buffer of bytes as headers. |
Type Definitions
Result |
A Result of any parsing action. |