no-pico-args

Crates.iono-pico-args
lib.rsno-pico-args
version0.5.1
created_at2025-12-24 10:36:38.863648+00
updated_at2026-01-08 18:27:19.532181+00
description`no_std` version of `pico_args` by RazrFalcon.
homepage
repositoryhttps://github.com/drafteddev/no-pico-args
max_upload_size
id2002979
size51,969
Mikail Plotzky (DraftedDev)

documentation

https://docs.rs/no-pico-args/

README

no-pico-args

Build Status Crates.io Documentation Rust 1.32+

no_std compatible version of pico-args.

This is a fork of the popular pico-args crate by RazrFalcon, with the goal of making it no_std compatible. All the types (mainly OsString and OsStr) have been converted to String and &str respectively, to make it no_std compatible. You will still need the alloc crate though.

One limitation this adds, is that it only supports UTF8 arguments.

See pico-args for more information about the actual crate.

Build features

  • std

    Enables use of std-related functions. Disabling this will make the library no_std compatible.

  • eq-separator

    Allows parsing arguments separated by =
    This feature adds about 1KiB to the resulting binary

  • short-space-opt

    Makes the space between short keys and their values optional (e.g. -w10)
    If eq-separator is enabled, then it takes precedence and the '=' is not included.
    If eq-separator is disabled, then -K=value gives an error instead of returning "=value".
    The optional space is only applicable for short keys because --keyvalue would be ambiguous

  • combined-flags

    Allows combination of flags, e.g. -abc instead of -a -b -c
    If short-space-opt or eq-separator are enabled, you must parse flags after values, to prevent ambiguities

Attribution

This crate is a fork of pico-args by RazrFalcon and does not really add any value to the original code, other than making it no_std compatible. The entire logic is taken from the original crate, with only minor changes.

License

MIT

Commit count: 79

cargo fmt