sfparse 0.1.0

RFC 9651 Structured Field Values parser
Documentation
sfparse-rs
==========

sfparse-rs is `RFC 9651
<https://datatracker.ietf.org/doc/html/rfc9651>`_ Structured Field
Values parser written in Rust.  It is the port of `sfparse
<https://github.com/ngtcp2/sfparse>`_ written in C.

It is designed not to do any extra allocation, like allocating maps,
lists, and Strings, and do the minimal stuff to parse the input data.

.. code-block:: rust

    use sfparse::{Parser, Value};

    let mut urgency :i32 = 3;
    let mut incremental = false;
    let mut p = Parser::new("u=2, i".as_bytes());

    loop {
        match p.parse_dict().unwrap() {
            None => break,
            Some(("u", Value::Integer(v))) if (0i64..=7i64).contains(&v) => urgency = v as i32,
            Some(("i", Value::Bool(v))) => incremental = v,
            _ => (),
        }
    }

    println!("urgency={urgency} incremental={incremental}");

License
-------

The MIT License

Copyright (c) 2024 sfparse-rs contributors