-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCargo.toml
117 lines (99 loc) · 3.5 KB
/
Cargo.toml
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
[package]
name = "ladata"
description = "A simple & modular data model."
version = "0.0.29"
edition = "2021"
rust-version = "1.72.0" # in sync with ./check.sh & .github/workflows/check.yml
authors = ["José Luis Cruz <[email protected]>"]
repository = "https://github.com/andamira/ladata"
documentation = "https://docs.rs/ladata"
license = "MIT OR Apache-2.0"
include = [
"/src/**/*.rs",
"/src/**/*.md",
"/Cargo.toml",
"/LICENSE-*",
"/README.md",
]
categories = [ "data-structures", "no-std::no-alloc" ]
keywords = [ "data", "type", "unit" ]
publish = true
# ------------------------------------------------------------------------------
[features]
default = ["std", "deps_default"]
#* environment features *#
# (not enabling "std" declares the library as "no_std")
std = [ # enables functionality that depend on the standard library
"alloc",
"half?/std",
"devela/std",
]
alloc = ["devela/alloc"] # enables functionality that depend on allocation
no_std = ["devela/no_std"] # enables functionality incompatible with the standard library
#* safety features *#
safe = [] # forbids unsafe at the crate level
safest = ["safe", "devela/safest"] # forbids unsafe recursively
unsafe = [ # enables all the unsafe features
"unsafe_constructors",
"unsafe_init",
"unsafe_pop",
"unsafe_unit",
]
unsafe_constructors = ["devela/unsafe_num"] # enables using unchecked constructors
unsafe_init = [] # enables fast array initialization
unsafe_pop = [] # enables pop methods not depending on T: Clone
unsafe_unit = [] # enables `unit::DataRaw`
unsafest = ["unsafe", "devela/unsafest"] # enables unsafe recursively.
#* nightly features *#
nightly = [] # enables nightly features.
nightly_docs = [ # enables features for docs.rs.
"nightly",
"std",
"unsafe",
"deps_all",
"devela/nightly_docs",
]
#* deprecated features *#
no-std = ["no_std"]
#* other features *#
deps_default = [
# "deps_numerical",
"deps_discrete",
# "deps_continuous",
# "half", "twofloat",
# "deps_categorical",
"deps_string",
# "deps_datetime",
"time", # !"fugit",
]
deps_all = ["deps_numerical", "deps_categorical"]
deps_numerical= ["deps_continuous", "deps_discrete"]
deps_continuous = ["half", "twofloat"]
deps_discrete = ["num-rational", "num-bigint", "rust_decimal"]
deps_categorical = ["deps_datetime", "deps_string"]
deps_datetime = ["fugit", "time"]
deps_string = ["arraystring"]
# ------------------------------------------------------------------------------
[dependencies]
devela = { version = "0.8.0", default-features = false }
unicode-segmentation = "1.10.1" # RETHINK
#* optional dependencies *#
# feature: "deps_continuous" (continuous numbers):
half = { version = "2.3", optional = true, default-features = false } # F16 BF16
twofloat = { version = "0.6.1", optional = true, default-features = false } # F128
# feature: "deps_discrete" (discrete numbers):
num-rational = { version = "0.4.1", optional = true } # Ratio
num-bigint = { version = "0.4.3", optional = true } # BigInt
rust_decimal = { version = "1.31.0", optional = true } # Decimal
# feature: "deps_string" (strings):
arraystring = { version = "0.3.0", optional = true } # ArrayString*
# feature: "dep_datetime" (date/time):
fugit = { version = "0.3.6", optional = true }
time = { version = "0.3.11", optional = true }
[dev-dependencies]
# ------------------------------------------------------------------------------
[package.metadata.docs.rs]
no-default-features = true
features = ["nightly_docs"]
[badges]
maintenance = { status = "experimental" }