Skip to content

Commit 8cd55ee

Browse files
committed
Fix serde support
1 parent c02abed commit 8cd55ee

File tree

4 files changed

+44
-43
lines changed

4 files changed

+44
-43
lines changed

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,6 @@ after_success:
2626
env:
2727
global:
2828
# override the default `--features unstable` used for the nightly branch (optional)
29-
- TRAVIS_CARGO_NIGHTLY_FEATURE=""
29+
- TRAVIS_CARGO_NIGHTLY_FEATURE="with-serde"
3030
# encrypted github token for doc upload (see `GH_TOKEN` link above)
3131
# - secure: "F/JPoMuga2/Dela06oMw2tQg4gBkHVS9uNmtQ0/r9fXS1b+Dt/7fM+7vOHyyb5VNy4CIJRUW0gBirgzY+ircaO4if7+BWfX5W/uK0aayzjRQ2WpgThIt42kyUbgk6IFfQev8tfQE9lLQGuhdTetRRxrO2GFVsZsKItRJ+MEZOoIkUI69SBPGr/530Zyn7TVHlJ/KuCGfmdTJaXtRn8hobZZDFi2PcQFVKY7UgloMehqi2OdBumfePxSRHgpk8cyiwT+FG4mbjMFyckaUqf4wTDZuaFrTA5QnWOONiqv1ti7KCxcfZ2ShtNS/mKRuvv/QTFMgZTOaPumd7YnpIdWgUA3wf19xp+9HwAIzhwCKTEt0GcRAh22yGeYGcttL8/TI+bXt9p6cGvct3Dqdakmceq356EZl2pkFbKZE+7LXp9cruiVfrnshLzbKaAsbPBNYgl8d0MjqLFRW+CaSEJhYjQBX1KaUyLeTEoWWHVxcmaBzBdIfEtW9HYKVj+5vgX4h8jNatlOvxSh13snYykAlr+o5bl/U2xyYM/u/5VRiDgc8auUb/K1hX5p7/FAX5H2q0+l2+av84rs2FK2gC6fTtO3Srf7YB3Vb3iBw54B9A3iX43nmr3qmw4MQnIeGaSFb0Yvy8mmsQ04vNM9/XwAd8uI5GaW3V5+IS+lKZZ2NT2Q="

Cargo.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,12 @@ CPUs, as well as raw interfaces to platform-specific instructions.
1616
"""
1717

1818
[dependencies]
19-
serde = { version = "0.4", optional = true }
20-
serde_macros = { version = "0.4", optional = true }
19+
serde = { version = "0.9", optional = true }
20+
serde_derive = { version = "0.9", optional = true }
2121

2222
[dev-dependencies]
2323
cfg-if = "0.1"
2424

2525
[features]
2626
doc = []
27+
with-serde = ["serde", "serde_derive"]

src/lib.rs

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -13,29 +13,29 @@
1313
//!
1414
//! This is **not** currently the `simd` crate on crates.io.
1515
16-
#![cfg_attr(feature = "serde", feature(plugin, custom_derive))]
17-
#![cfg_attr(feature = "serde", plugin(serde_macros))]
18-
1916
#![feature(cfg_target_feature, repr_simd, platform_intrinsics, const_fn)]
2017
#![allow(non_camel_case_types)]
2118

22-
#[cfg(feature = "serde")]
19+
#[cfg(feature = "with-serde")]
2320
extern crate serde;
21+
#[cfg(feature = "with-serde")]
22+
#[macro_use]
23+
extern crate serde_derive;
2424

2525
/// Boolean type for 8-bit integers.
26-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
26+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
2727
#[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord)]
2828
pub struct bool8i(i8);
2929
/// Boolean type for 16-bit integers.
30-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
30+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
3131
#[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord)]
3232
pub struct bool16i(i16);
3333
/// Boolean type for 32-bit integers.
34-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
34+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
3535
#[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord)]
3636
pub struct bool32i(i32);
3737
/// Boolean type for 32-bit floats.
38-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
38+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
3939
#[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord)]
4040
pub struct bool32f(i32);
4141

@@ -74,90 +74,90 @@ pub unsafe trait Simd {
7474

7575
/// A SIMD vector of 4 `u32`s.
7676
#[repr(simd)]
77-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
77+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
7878
#[derive(Debug, Copy)]
7979
pub struct u32x4(u32, u32, u32, u32);
8080
/// A SIMD vector of 4 `i32`s.
8181
#[repr(simd)]
82-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
82+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
8383
#[derive(Debug, Copy)]
8484
pub struct i32x4(i32, i32, i32, i32);
8585
/// A SIMD vector of 4 `f32`s.
8686
#[repr(simd)]
87-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
87+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
8888
#[derive(Debug, Copy)]
8989
pub struct f32x4(f32, f32, f32, f32);
9090
/// A SIMD boolean vector for length-4 vectors of 32-bit integers.
9191
#[repr(simd)]
92-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
92+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
9393
#[derive(Debug, Copy)]
9494
pub struct bool32ix4(i32, i32, i32, i32);
9595
/// A SIMD boolean vector for length-4 vectors of 32-bit floats.
9696
#[repr(simd)]
97-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
97+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
9898
#[derive(Debug, Copy)]
9999
pub struct bool32fx4(i32, i32, i32, i32);
100100

101101
#[allow(dead_code)]
102102
#[repr(simd)]
103-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
103+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
104104
#[derive(Debug, Copy)]
105105
struct u32x2(u32, u32);
106106
#[allow(dead_code)]
107107
#[repr(simd)]
108-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
108+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
109109
#[derive(Debug, Copy)]
110110
struct i32x2(i32, i32);
111111
#[allow(dead_code)]
112112
#[repr(simd)]
113-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
113+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
114114
#[derive(Debug, Copy)]
115115
struct f32x2(f32, f32);
116116
#[allow(dead_code)]
117117
#[repr(simd)]
118-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
118+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
119119
#[derive(Debug, Copy)]
120120
struct bool32ix2(i32, i32);
121121
#[allow(dead_code)]
122122
#[repr(simd)]
123-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
123+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
124124
#[derive(Debug, Copy)]
125125
struct bool32fx2(i32, i32);
126126

127127
/// A SIMD vector of 8 `u16`s.
128128
#[repr(simd)]
129-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
129+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
130130
#[derive(Debug, Copy)]
131131
pub struct u16x8(u16, u16, u16, u16,
132132
u16, u16, u16, u16);
133133
/// A SIMD vector of 8 `i16`s.
134134
#[repr(simd)]
135-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
135+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
136136
#[derive(Debug, Copy)]
137137
pub struct i16x8(i16, i16, i16, i16,
138138
i16, i16, i16, i16);
139139
/// A SIMD boolean vector for length-8 vectors of 16-bit integers.
140140
#[repr(simd)]
141-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
141+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
142142
#[derive(Debug, Copy)]
143143
pub struct bool16ix8(i16, i16, i16, i16,
144144
i16, i16, i16, i16);
145145

146146
/// A SIMD vector of 16 `u8`s.
147147
#[repr(simd)]
148-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
148+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
149149
#[derive(Debug, Copy)]
150150
pub struct u8x16(u8, u8, u8, u8, u8, u8, u8, u8,
151151
u8, u8, u8, u8, u8, u8, u8, u8);
152152
/// A SIMD vector of 16 `i8`s.
153153
#[repr(simd)]
154-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
154+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
155155
#[derive(Debug, Copy)]
156156
pub struct i8x16(i8, i8, i8, i8, i8, i8, i8, i8,
157157
i8, i8, i8, i8, i8, i8, i8, i8);
158158
/// A SIMD boolean vector for length-16 vectors of 8-bit integers.
159159
#[repr(simd)]
160-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
160+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
161161
#[derive(Debug, Copy)]
162162
pub struct bool8ix16(i8, i8, i8, i8, i8, i8, i8, i8,
163163
i8, i8, i8, i8, i8, i8, i8, i8);

src/v256.rs

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -19,83 +19,83 @@ use super::sixty_four::*;
1919
use super::x86::avx::common;
2020

2121
#[repr(simd)]
22-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
22+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
2323
#[derive(Debug, Copy)]
2424
pub struct u64x4(u64, u64, u64, u64);
2525
#[repr(simd)]
26-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
26+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
2727
#[derive(Debug, Copy)]
2828
pub struct i64x4(i64, i64, i64, i64);
2929
#[repr(simd)]
30-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
30+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
3131
#[derive(Debug, Copy)]
3232
pub struct f64x4(f64, f64, f64, f64);
3333
#[repr(simd)]
34-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
34+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
3535
#[derive(Debug, Copy)]
3636
pub struct bool64ix4(i64, i64, i64, i64);
3737
#[repr(simd)]
38-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
38+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
3939
#[derive(Debug, Copy)]
4040
pub struct bool64fx4(i64, i64, i64, i64);
4141

4242
#[repr(simd)]
43-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
43+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
4444
#[derive(Debug, Copy)]
4545
pub struct u32x8(u32, u32, u32, u32,
4646
u32, u32, u32, u32);
4747
#[repr(simd)]
48-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
48+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
4949
#[derive(Debug, Copy)]
5050
pub struct i32x8(i32, i32, i32, i32,
5151
i32, i32, i32, i32);
5252
#[repr(simd)]
53-
#[cfg_attr(feature = "serde", derfve(Serialize, Deserialize))]
53+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
5454
#[derive(Debug, Copy)]
5555
pub struct f32x8(f32, f32, f32, f32,
5656
f32, f32, f32, f32);
5757
#[repr(simd)]
58-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
58+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
5959
#[derive(Debug, Copy)]
6060
pub struct bool32ix8(i32, i32, i32, i32,
6161
i32, i32, i32, i32);#[repr(simd)]
62-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
62+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
6363
#[derive(Debug, Copy)]
6464
pub struct bool32fx8(i32, i32, i32, i32,
6565
i32, i32, i32, i32);
6666

6767
#[repr(simd)]
68-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
68+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
6969
#[derive(Debug, Copy)]
7070
pub struct u16x16(u16, u16, u16, u16, u16, u16, u16, u16,
7171
u16, u16, u16, u16, u16, u16, u16, u16);
7272
#[repr(simd)]
73-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
73+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
7474
#[derive(Debug, Copy)]
7575
pub struct i16x16(i16, i16, i16, i16, i16, i16, i16, i16,
7676
i16, i16, i16, i16, i16, i16, i16, i16);
7777
#[repr(simd)]
78-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
78+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
7979
#[derive(Debug, Copy)]
8080
pub struct bool16ix16(i16, i16, i16, i16, i16, i16, i16, i16,
8181
i16, i16, i16, i16, i16, i16, i16, i16);
8282

8383
#[repr(simd)]
84-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
84+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
8585
#[derive(Debug, Copy)]
8686
pub struct u8x32(u8, u8, u8, u8, u8, u8, u8, u8,
8787
u8, u8, u8, u8, u8, u8, u8, u8,
8888
u8, u8, u8, u8, u8, u8, u8, u8,
8989
u8, u8, u8, u8, u8, u8, u8, u8);
9090
#[repr(simd)]
91-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
91+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
9292
#[derive(Debug, Copy)]
9393
pub struct i8x32(i8, i8, i8, i8, i8, i8, i8, i8,
9494
i8, i8, i8, i8, i8, i8, i8, i8,
9595
i8, i8, i8, i8, i8, i8, i8, i8,
9696
i8, i8, i8, i8, i8, i8, i8, i8);
9797
#[repr(simd)]
98-
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
98+
#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
9999
#[derive(Debug, Copy)]
100100
pub struct bool8ix32(i8, i8, i8, i8, i8, i8, i8, i8,
101101
i8, i8, i8, i8, i8, i8, i8, i8,

0 commit comments

Comments
 (0)