# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
rust-version = "1.46.0"
name = "shlex"
version = "1.3.0"
authors = [
    "comex <comexk@gmail.com>",
    "Fenhl <fenhl@fenhl.net>",
    "Adrian Taylor <adetaylor@chromium.org>",
    "Alex Touchet <alextouchet@outlook.com>",
    "Daniel Parks <dp+git@oxidized.org>",
    "Garrett Berg <googberg@gmail.com>",
]
description = "Split a string into shell words, like Python's shlex."
readme = "README.md"
categories = [
    "command-line-interface",
    "parser-implementations",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/comex/rust-shlex"

[features]
default = ["std"]
std = []
