Skip to content

Commit 3380fe5

Browse files
authored
Merge pull request #118 from dtolnay/up
Raise required compiler to Rust 1.68
2 parents eba735a + 2c28047 commit 3380fe5

File tree

4 files changed

+41
-60
lines changed

4 files changed

+41
-60
lines changed

.github/workflows/ci.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
strategy:
2525
fail-fast: false
2626
matrix:
27-
rust: [nightly, beta, stable, 1.76.0, 1.61.0]
27+
rust: [nightly, beta, stable, 1.76.0, 1.68.0]
2828
timeout-minutes: 45
2929
steps:
3030
- uses: actions/checkout@v5
@@ -38,7 +38,7 @@ jobs:
3838
- run: cargo check --manifest-path tests/crate/Cargo.toml
3939
- run: cargo check --manifest-path tests/crate/Cargo.toml --no-default-features --features alloc
4040
- run: cargo test
41-
if: matrix.rust != '1.61.0'
41+
if: matrix.rust != '1.68.0'
4242
- uses: actions/upload-artifact@v4
4343
if: matrix.rust == 'nightly' && always()
4444
with:

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ exclude = ["benches"]
1010
keywords = ["serde", "erasure"]
1111
license = "MIT OR Apache-2.0"
1212
repository = "https://github.com/dtolnay/erased-serde"
13-
rust-version = "1.61"
13+
rust-version = "1.68"
1414

1515
[dependencies]
1616
serde_core = { version = "1.0.220", default-features = false }

build.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,8 @@ use std::str;
55
fn main() {
66
println!("cargo:rerun-if-changed=build.rs");
77

8-
let minor = match rustc_minor_version() {
9-
Some(minor) => minor,
10-
None => return,
8+
let Some(minor) = rustc_minor_version() else {
9+
return;
1110
};
1211

1312
if minor >= 80 {

src/ser.rs

Lines changed: 36 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -923,9 +923,8 @@ where
923923
T: serde::Serializer,
924924
{
925925
fn erased_serialize_element(&mut self, value: &dyn Serialize) -> Result<(), ErrorImpl> {
926-
let serializer = match self {
927-
erase::Serializer::Seq(serializer) => serializer,
928-
_ => unreachable!(),
926+
let erase::Serializer::Seq(serializer) = self else {
927+
unreachable!();
929928
};
930929
serializer.serialize_element(value).map_err(|err| {
931930
*self = erase::Serializer::Error(err);
@@ -934,9 +933,8 @@ where
934933
}
935934

936935
fn erased_end(&mut self) {
937-
let serializer = match self.take() {
938-
erase::Serializer::Seq(serializer) => serializer,
939-
_ => unreachable!(),
936+
let erase::Serializer::Seq(serializer) = self.take() else {
937+
unreachable!();
940938
};
941939
*self = match serializer.end() {
942940
Ok(ok) => erase::Serializer::Complete(ok),
@@ -972,9 +970,8 @@ where
972970
T: serde::Serializer,
973971
{
974972
fn erased_serialize_element(&mut self, value: &dyn Serialize) -> Result<(), ErrorImpl> {
975-
let serializer = match self {
976-
erase::Serializer::Tuple(serializer) => serializer,
977-
_ => unreachable!(),
973+
let erase::Serializer::Tuple(serializer) = self else {
974+
unreachable!();
978975
};
979976
serializer.serialize_element(value).map_err(|err| {
980977
*self = erase::Serializer::Error(err);
@@ -983,9 +980,8 @@ where
983980
}
984981

985982
fn erased_end(&mut self) {
986-
let serializer = match self.take() {
987-
erase::Serializer::Tuple(serializer) => serializer,
988-
_ => unreachable!(),
983+
let erase::Serializer::Tuple(serializer) = self.take() else {
984+
unreachable!();
989985
};
990986
*self = match serializer.end() {
991987
Ok(ok) => erase::Serializer::Complete(ok),
@@ -1021,9 +1017,8 @@ where
10211017
T: serde::Serializer,
10221018
{
10231019
fn erased_serialize_field(&mut self, value: &dyn Serialize) -> Result<(), ErrorImpl> {
1024-
let serializer = match self {
1025-
erase::Serializer::TupleStruct(serializer) => serializer,
1026-
_ => unreachable!(),
1020+
let erase::Serializer::TupleStruct(serializer) = self else {
1021+
unreachable!();
10271022
};
10281023
serializer.serialize_field(value).map_err(|err| {
10291024
*self = erase::Serializer::Error(err);
@@ -1032,9 +1027,8 @@ where
10321027
}
10331028

10341029
fn erased_end(&mut self) {
1035-
let serializer = match self.take() {
1036-
erase::Serializer::TupleStruct(serializer) => serializer,
1037-
_ => unreachable!(),
1030+
let erase::Serializer::TupleStruct(serializer) = self.take() else {
1031+
unreachable!();
10381032
};
10391033
*self = match serializer.end() {
10401034
Ok(ok) => erase::Serializer::Complete(ok),
@@ -1070,9 +1064,8 @@ where
10701064
T: serde::Serializer,
10711065
{
10721066
fn erased_serialize_field(&mut self, value: &dyn Serialize) -> Result<(), ErrorImpl> {
1073-
let serializer = match self {
1074-
erase::Serializer::TupleVariant(serializer) => serializer,
1075-
_ => unreachable!(),
1067+
let erase::Serializer::TupleVariant(serializer) = self else {
1068+
unreachable!();
10761069
};
10771070
serializer.serialize_field(value).map_err(|err| {
10781071
*self = erase::Serializer::Error(err);
@@ -1081,9 +1074,8 @@ where
10811074
}
10821075

10831076
fn erased_end(&mut self) {
1084-
let serializer = match self.take() {
1085-
erase::Serializer::TupleVariant(serializer) => serializer,
1086-
_ => unreachable!(),
1077+
let erase::Serializer::TupleVariant(serializer) = self.take() else {
1078+
unreachable!();
10871079
};
10881080
*self = match serializer.end() {
10891081
Ok(ok) => erase::Serializer::Complete(ok),
@@ -1125,9 +1117,8 @@ where
11251117
T: serde::Serializer,
11261118
{
11271119
fn erased_serialize_key(&mut self, key: &dyn Serialize) -> Result<(), ErrorImpl> {
1128-
let serializer = match self {
1129-
erase::Serializer::Map(serializer) => serializer,
1130-
_ => unreachable!(),
1120+
let erase::Serializer::Map(serializer) = self else {
1121+
unreachable!();
11311122
};
11321123
serializer.serialize_key(key).map_err(|err| {
11331124
*self = erase::Serializer::Error(err);
@@ -1136,9 +1127,8 @@ where
11361127
}
11371128

11381129
fn erased_serialize_value(&mut self, value: &dyn Serialize) -> Result<(), ErrorImpl> {
1139-
let serializer = match self {
1140-
erase::Serializer::Map(serializer) => serializer,
1141-
_ => unreachable!(),
1130+
let erase::Serializer::Map(serializer) = self else {
1131+
unreachable!();
11421132
};
11431133
serializer.serialize_value(value).map_err(|err| {
11441134
*self = erase::Serializer::Error(err);
@@ -1151,9 +1141,8 @@ where
11511141
key: &dyn Serialize,
11521142
value: &dyn Serialize,
11531143
) -> Result<(), ErrorImpl> {
1154-
let serializer = match self {
1155-
erase::Serializer::Map(serializer) => serializer,
1156-
_ => unreachable!(),
1144+
let erase::Serializer::Map(serializer) = self else {
1145+
unreachable!();
11571146
};
11581147
serializer.serialize_entry(key, value).map_err(|err| {
11591148
*self = erase::Serializer::Error(err);
@@ -1162,9 +1151,8 @@ where
11621151
}
11631152

11641153
fn erased_end(&mut self) {
1165-
let serializer = match self.take() {
1166-
erase::Serializer::Map(serializer) => serializer,
1167-
_ => unreachable!(),
1154+
let erase::Serializer::Map(serializer) = self.take() else {
1155+
unreachable!();
11681156
};
11691157
*self = match serializer.end() {
11701158
Ok(ok) => erase::Serializer::Complete(ok),
@@ -1224,9 +1212,8 @@ where
12241212
key: &'static str,
12251213
value: &dyn Serialize,
12261214
) -> Result<(), ErrorImpl> {
1227-
let serializer = match self {
1228-
erase::Serializer::Struct(serializer) => serializer,
1229-
_ => unreachable!(),
1215+
let erase::Serializer::Struct(serializer) = self else {
1216+
unreachable!();
12301217
};
12311218
serializer.serialize_field(key, value).map_err(|err| {
12321219
*self = erase::Serializer::Error(err);
@@ -1235,9 +1222,8 @@ where
12351222
}
12361223

12371224
fn erased_skip_field(&mut self, key: &'static str) -> Result<(), ErrorImpl> {
1238-
let serializer = match self {
1239-
erase::Serializer::Struct(serializer) => serializer,
1240-
_ => unreachable!(),
1225+
let erase::Serializer::Struct(serializer) = self else {
1226+
unreachable!();
12411227
};
12421228
serializer.skip_field(key).map_err(|err| {
12431229
*self = erase::Serializer::Error(err);
@@ -1246,9 +1232,8 @@ where
12461232
}
12471233

12481234
fn erased_end(&mut self) {
1249-
let serializer = match self.take() {
1250-
erase::Serializer::Struct(serializer) => serializer,
1251-
_ => unreachable!(),
1235+
let erase::Serializer::Struct(serializer) = self.take() else {
1236+
unreachable!();
12521237
};
12531238
*self = match serializer.end() {
12541239
Ok(ok) => erase::Serializer::Complete(ok),
@@ -1297,9 +1282,8 @@ where
12971282
key: &'static str,
12981283
value: &dyn Serialize,
12991284
) -> Result<(), ErrorImpl> {
1300-
let serializer = match self {
1301-
erase::Serializer::StructVariant(serializer) => serializer,
1302-
_ => unreachable!(),
1285+
let erase::Serializer::StructVariant(serializer) = self else {
1286+
unreachable!();
13031287
};
13041288
serializer.serialize_field(key, value).map_err(|err| {
13051289
*self = erase::Serializer::Error(err);
@@ -1308,9 +1292,8 @@ where
13081292
}
13091293

13101294
fn erased_skip_field(&mut self, key: &'static str) -> Result<(), ErrorImpl> {
1311-
let serializer = match self {
1312-
erase::Serializer::Struct(serializer) => serializer,
1313-
_ => unreachable!(),
1295+
let erase::Serializer::Struct(serializer) = self else {
1296+
unreachable!();
13141297
};
13151298
serializer.skip_field(key).map_err(|err| {
13161299
*self = erase::Serializer::Error(err);
@@ -1319,9 +1302,8 @@ where
13191302
}
13201303

13211304
fn erased_end(&mut self) {
1322-
let serializer = match self.take() {
1323-
erase::Serializer::StructVariant(serializer) => serializer,
1324-
_ => unreachable!(),
1305+
let erase::Serializer::StructVariant(serializer) = self.take() else {
1306+
unreachable!();
13251307
};
13261308
*self = match serializer.end() {
13271309
Ok(ok) => erase::Serializer::Complete(ok),

0 commit comments

Comments
 (0)