-
Notifications
You must be signed in to change notification settings - Fork 67
Expand file tree
/
Copy pathCargo.toml
More file actions
135 lines (107 loc) · 4.15 KB
/
Copy pathCargo.toml
File metadata and controls
135 lines (107 loc) · 4.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
[package]
name = "tinyvec"
description = "`tinyvec` provides 100% safe vec-like data structures."
version = "1.13.3"
authors = ["Lokathor <zefria@gmail.com>"]
edition = "2018"
license = "Zlib OR Apache-2.0 OR MIT"
keywords = ["vec", "no_std", "no-std"]
categories = ["data-structures", "no-std"]
repository = "https://github.com/Lokathor/tinyvec"
exclude = ["/.github", "/*.py", "/*.sh", "/src-backup"]
[dependencies]
# Provides `Serialize` and `Deserialize` implementations
serde_core = { version = "1.0", optional = true, default-features = false }
# Provides derived `Arbitrary` implementations
arbitrary = { version = "1", optional = true }
# Provides `BorshSerialize` and `BorshDeserialize implementations
borsh = { version = "1.2.0", optional = true, default-features = false }
# Implements the trait `Array` for `GenericArray` struct.
generic-array = { version = "1.1.1", optional = true, default-features = false }
# Provides derived `BitEncode` and `BitDecode` implementations
bin-proto = { version = "0.12.5", optional = true, default-features = false }
# Provides `Format` implementations
defmt = { version = "1.0", optional = true }
# Provides `JsonSchema` implementations
schemars = { version = "1.0", optional = true, default-features = false }
[features]
default = []
# Provide things that utilize the `alloc` crate, namely `TinyVec`.
alloc = []
# Provide things that require Rust's `std` module
std = ["alloc"]
# Provides `Serialize` and `Deserialize` implementations
serde = ["dep:serde_core"]
# (not part of Vec!) Extra methods to let you grab the slice of memory after the
# "active" portion of an `ArrayVec` or `SliceVec`.
grab_spare_slice = []
# obsolete feature that has to stay for semver reasons
rustc_1_40 = []
# obsolete feature that has to stay for semver reasons
rustc_1_55 = []
# features that require rustc 1.57
# add try_reserve functions to types that heap allocate.
rustc_1_57 = []
# features that require rustc 1.61
# add retain_mut function to TinyVec
rustc_1_61 = ["rustc_1_57"]
# We're done with per-version featuring, this feature opts in to all the
# abilities of the latest release of Stable rust, and we don't need a million
# features forever now.
latest_stable_rust = ["rustc_1_61"]
# this was an optional dependency once, and is now a do-nothing feature to avoid breakage.
tinyvec_macros = []
# allow use of nightly feature `slice_partition_dedup`,
# will become useless once that is stabilized:
# https://github.com/rust-lang/rust/issues/54279
nightly_slice_partition_dedup = []
# allow use of nightly feature `debugger_visualizer`,
# will become useless once that is stabilized:
# https://github.com/rust-lang/rust/issues/95939
debugger_visualizer = []
# EXPERIMENTAL: Not part of SemVer. It adds `core::fmt::Write` to `ArrayVec`
# and `SliceVec`. It works on Stable Rust, but Vec normally supports the
# `std::io::Write` trait instead of `core::fmt::Write`, so we're keeping it as
# an experimental impl only for now.
experimental_write_impl = []
# Some benchmarks are optimized away with the stable black_box function
# which is based on read_volatile. This feature requires inline assembly
# and thus a nightly compiler, but is only used in benchmarks.
real_blackbox = ["criterion/real_blackbox"]
schemars = ["dep:schemars", "alloc"]
[package.metadata.docs.rs]
features = ["alloc", "std", "grab_spare_slice", "latest_stable_rust", "serde", "borsh", "defmt", "bin-proto", "schemars"]
rustdoc-args = ["--cfg","docs_rs"]
[package.metadata.playground]
features = ["alloc", "std", "grab_spare_slice", "latest_stable_rust", "serde", "borsh", "schemars"]
[profile.dev]
lto = "thin"
[profile.bench]
debug = 2
[workspace]
#members = ["fuzz"]
[dev-dependencies]
criterion = "0.8.0"
serde_test = "1.0"
smallvec = "1"
debugger_test = "0.1"
debugger_test_parser = "0.1"
[[test]]
name = "tinyvec"
required-features = ["alloc", "std"]
[[test]]
name = "no_std_macro"
required-features = ["alloc"]
[[bench]]
name = "macros"
harness = false
required-features = ["alloc"]
[[bench]]
name = "smallvec"
harness = false
required-features = ["alloc", "real_blackbox"]
[[test]]
path = "tests/debugger_visualizer.rs"
name = "debugger_visualizer"
required-features = ["debugger_visualizer"]
test = false