Skip to content

Commit 9a38750

Browse files
committed
add primitive_types
1 parent 073e18e commit 9a38750

File tree

5 files changed

+28
-4
lines changed

5 files changed

+28
-4
lines changed

Cargo.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ proc-macro2 = "1.0"
4444
proc-macro-error = "1.0"
4545
quote = "1.0"
4646
regex = ">=1.5.5"
47-
schemars = { package = "apistos-schemars", version = "0.8", features = ["chrono", "uuid1", "url", "rust_decimal"] }
47+
schemars = { package = "apistos-schemars", git = "https://github.com/Pzixel/apistos-schemars.git", rev = "f9de3be5eaa576e4d9e48e0c9d45fec1a092e00b", version = "0.8", features = ["chrono", "uuid1", "url", "rust_decimal", "primitive_types"] }
4848
serde = "1"
4949
serde_json = "1"
5050
syn = "2.0"
@@ -59,6 +59,7 @@ serde_qs = "0.13"
5959
shuttle-runtime = { version = "0.46", default-features = false }
6060
uuid = { version = "1", features = ["serde", "v4"] }
6161
url = "2"
62+
primitive-types = "0.12.2"
6263

6364
[workspace.lints.rust]
6465
unsafe_code = "forbid"

apistos-core/Cargo.toml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ serde = { workspace = true, optional = true }
2929
serde_qs = { workspace = true, features = ["actix4"], optional = true }
3030
uuid = { workspace = true, optional = true }
3131
url = { workspace = true, optional = true }
32+
primitive-types = { workspace = true, optional = true }
3233

3334
apistos-models = { path = "../apistos-models", version = "0.4.2", features = ["deserialize"] }
3435

@@ -58,6 +59,8 @@ rust_decimal = ["dep:rust_decimal", "schemars/rust_decimal"]
5859
actix-session = ["actix", "dep:serde", "dep:actix-session"]
5960
uuid = ["dep:uuid", "schemars/uuid1"]
6061
url = ["dep:url", "schemars/url"]
61-
extras = ["chrono", "multipart", "rust_decimal", "uuid", "url"]
62+
primitive_types = ["dep:primitive-types", "schemars/primitive_types"]
63+
64+
extras = ["chrono", "multipart", "rust_decimal", "uuid", "url", "primitive_types"]
6265

6366
default = ["actix", "query"]

apistos-core/src/components/simple.rs

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,24 @@ simple_modifier!(chrono::NaiveDate);
5050
simple_modifier!(chrono::NaiveTime);
5151
#[cfg(feature = "chrono")]
5252
simple_modifier!(chrono::NaiveDateTime);
53+
#[cfg(feature = "primitive_types")]
54+
simple_modifier!(primitive_types::U128);
55+
#[cfg(feature = "primitive_types")]
56+
simple_modifier!(primitive_types::U256);
57+
#[cfg(feature = "primitive_types")]
58+
simple_modifier!(primitive_types::U512);
59+
#[cfg(feature = "primitive_types")]
60+
simple_modifier!(primitive_types::H128);
61+
#[cfg(feature = "primitive_types")]
62+
simple_modifier!(primitive_types::H160);
63+
#[cfg(feature = "primitive_types")]
64+
simple_modifier!(primitive_types::H256);
65+
#[cfg(feature = "primitive_types")]
66+
simple_modifier!(primitive_types::H384);
67+
#[cfg(feature = "primitive_types")]
68+
simple_modifier!(primitive_types::H512);
69+
#[cfg(feature = "primitive_types")]
70+
simple_modifier!(primitive_types::H768);
5371
#[cfg(feature = "rust_decimal")]
5472
simple_modifier!(rust_decimal::Decimal);
5573
#[cfg(feature = "uuid")]

apistos/Cargo.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,8 @@ multipart = ["apistos-core/multipart"]
6767
rust_decimal = ["apistos-core/rust_decimal"]
6868
uuid = ["apistos-core/uuid"]
6969
url = ["apistos-core/url"]
70-
extras = ["chrono", "multipart", "rust_decimal", "uuid", "url"]
70+
primitive_types = ["apistos-core/primitive_types"]
71+
extras = ["chrono", "multipart", "rust_decimal", "uuid", "url", "primitive_types"]
7172

7273
# ui features
7374
rapidoc = ["dep:apistos-rapidoc"]

examples/petstore/Cargo.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,12 @@ env_logger = "0.11"
1212
futures = "0.3"
1313
num-traits = "0.2"
1414
rust_decimal = "1"
15-
schemars = { package = "apistos-schemars", version = "0.8", features = ["chrono", "uuid1", "url", "rust_decimal"] }
15+
schemars = { package = "apistos-schemars", git = "https://github.com/Pzixel/apistos-schemars.git", rev = "f9de3be5eaa576e4d9e48e0c9d45fec1a092e00b", version = "0.8", features = ["chrono", "uuid1", "url", "rust_decimal", "primitive_types"] }
1616
serde = { version = "1.0", features = ["derive"] }
1717
serde_qs = { version = "0.13", features = ["actix4"] }
1818
uuid = { version = "1", features = ["serde", "v4"] }
1919
url = { version = "2", features = ["serde"] }
20+
primitive-types = "0.12.2"
2021

2122
apistos = { path = "../../apistos", features = ["extras", "qs_query"] }
2223

0 commit comments

Comments
 (0)