Skip to content

Commit 43fffbd

Browse files
committed
Add edition 2027
1 parent d6d9e76 commit 43fffbd

File tree

3 files changed

+19
-1
lines changed

3 files changed

+19
-1
lines changed

src/bin/main.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -760,6 +760,7 @@ fn edition_from_edition_str(edition_str: &str) -> Result<Edition> {
760760
"2018" => Ok(Edition::Edition2018),
761761
"2021" => Ok(Edition::Edition2021),
762762
"2024" => Ok(Edition::Edition2024),
763+
"2027" => Ok(Edition::Edition2027),
763764
_ => Err(format_err!("Invalid value for `--edition`")),
764765
}
765766
}
@@ -770,6 +771,7 @@ fn style_edition_from_style_edition_str(edition_str: &str) -> Result<StyleEditio
770771
"2018" => Ok(StyleEdition::Edition2018),
771772
"2021" => Ok(StyleEdition::Edition2021),
772773
"2024" => Ok(StyleEdition::Edition2024),
774+
"2027" => Ok(StyleEdition::Edition2027),
773775
_ => Err(format_err!("Invalid value for `--style-edition`")),
774776
}
775777
}

src/config/options.rs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -443,6 +443,10 @@ pub enum Edition {
443443
#[doc_hint = "2024"]
444444
/// Edition 2024.
445445
Edition2024,
446+
#[value = "2027"]
447+
#[doc_hint = "2027"]
448+
/// Edition 2027.
449+
Edition2027,
446450
}
447451

448452
impl Default for Edition {
@@ -458,6 +462,8 @@ impl From<Edition> for rustc_span::edition::Edition {
458462
Edition::Edition2018 => Self::Edition2018,
459463
Edition::Edition2021 => Self::Edition2021,
460464
Edition::Edition2024 => Self::Edition2024,
465+
// TODO: update to 2027 after rustc change
466+
Edition::Edition2027 => Self::Edition2024,
461467
}
462468
}
463469
}
@@ -469,6 +475,7 @@ impl From<Edition> for StyleEdition {
469475
Edition::Edition2018 => StyleEdition::Edition2018,
470476
Edition::Edition2021 => StyleEdition::Edition2021,
471477
Edition::Edition2024 => StyleEdition::Edition2024,
478+
Edition::Edition2027 => StyleEdition::Edition2027,
472479
}
473480
}
474481
}
@@ -514,6 +521,11 @@ pub enum StyleEdition {
514521
#[unstable_variant]
515522
/// [Edition 2024]().
516523
Edition2024,
524+
#[value = "2027"]
525+
#[doc_hint = "2027"]
526+
#[unstable_variant]
527+
/// [Edition 2027]().
528+
Edition2027,
517529
}
518530

519531
impl From<StyleEdition> for rustc_span::edition::Edition {
@@ -523,6 +535,7 @@ impl From<StyleEdition> for rustc_span::edition::Edition {
523535
StyleEdition::Edition2018 => Self::Edition2018,
524536
StyleEdition::Edition2021 => Self::Edition2021,
525537
StyleEdition::Edition2024 => Self::Edition2024,
538+
StyleEdition::Edition2027 => Self::Edition2024,
526539
}
527540
}
528541
}

src/config/style_edition.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@ macro_rules! style_edition_default {
3030
$crate::config::StyleEdition::Edition2015
3131
| $crate::config::StyleEdition::Edition2018
3232
| $crate::config::StyleEdition::Edition2021 => $default_2015,
33-
$crate::config::StyleEdition::Edition2024 => $default_2024,
33+
$crate::config::StyleEdition::Edition2024
34+
| $crate::config::StyleEdition::Edition2027 => $default_2024,
3435
}
3536
}
3637
}
@@ -52,6 +53,7 @@ mod test {
5253
assert_eq!(Unit::style_edition_default(StyleEdition::Edition2018), 100);
5354
assert_eq!(Unit::style_edition_default(StyleEdition::Edition2021), 100);
5455
assert_eq!(Unit::style_edition_default(StyleEdition::Edition2024), 100);
56+
assert_eq!(Unit::style_edition_default(StyleEdition::Edition2027), 100);
5557
}
5658

5759
#[test]
@@ -66,5 +68,6 @@ mod test {
6668

6769
// style edition 2024
6870
assert_eq!(Unit::style_edition_default(StyleEdition::Edition2024), 50);
71+
assert_eq!(Unit::style_edition_default(StyleEdition::Edition2027), 50);
6972
}
7073
}

0 commit comments

Comments
 (0)