Repository: clap-rs/clap (language: rust)

Issue:
Documentation error: `ArgEnum` vs `ValueEnum`
### Please complete the following tasks

- [X] I have searched the [discussions](https://github.com/clap-rs/clap/discussions)
- [X] I have searched the [open](https://github.com/clap-rs/clap/issues) and [rejected](https://github.com/clap-rs/clap/issues?q=is%3Aissue+label%3AS-wont-fix+is%3Aclosed) issues

### Rust Version

1.62.1

### Clap Version

3.2.16

### Minimal reproducible code

The first code block in this section, I believe, has an error: https://docs.rs/clap/latest/clap/_derive/_tutorial/index.html#enumerated-values

Specifically `ArgEnum` being derived on the `Mode` enum.

### Steps to reproduce the bug with the above code

.

### Actual Behaviour

.

### Expected Behaviour

I think `ArgEnum` in the code block should be `ValueEnum`

### Additional Context

_No response_

### Debug Output

_No response_


Discussion / hints:
`ArgEnum` is a deprecated name for `ValueEnum`.  v4 work has started in master and it looks like I missed removing this deprecation; that will be addressed soon.

If someone feels the need to backport this to v3-master, let us know!

Fix patch:
diff --git a/examples/tutorial_derive/04_01_enum.rs b/examples/tutorial_derive/04_01_enum.rs
index 84b4cace495..1ac984288d4 100644
--- a/examples/tutorial_derive/04_01_enum.rs
+++ b/examples/tutorial_derive/04_01_enum.rs
@@ -1,4 +1,4 @@
-use clap::{ArgEnum, Parser};
+use clap::{Parser, ValueEnum};
 
 #[derive(Parser)]
 #[clap(author, version, about, long_about = None)]
@@ -8,7 +8,7 @@ struct Cli {
     mode: Mode,
 }
 
-#[derive(Copy, Clone, PartialEq, Eq, PartialOrd, Ord, ArgEnum)]
+#[derive(Copy, Clone, PartialEq, Eq, PartialOrd, Ord, ValueEnum)]
 enum Mode {
     Fast,
     Slow,
diff --git a/src/_derive/mod.rs b/src/_derive/mod.rs
index 977c6dc2f61..cf5dd0b3ae5 100644
--- a/src/_derive/mod.rs
+++ b/src/_derive/mod.rs
@@ -5,7 +5,7 @@
 //!     1. [Terminology](#terminology)
 //!     2. [Command Attributes](#command-attributes)
 //!     3. [Arg Attributes](#arg-attributes)
-//!     4. [Arg Enum Attributes](#arg-enum-attributes)
+//!     4. [ValueEnum Attributes](#valueenum-attributes)
 //!     5. [Possible Value Attributes](#possible-value-attributes)
 //! 3. [Arg Types](#arg-types)
 //! 4. [Doc Comments](#doc-comments)
@@ -241,7 +241,7 @@
 //!   - Requires field arg to be of type `Vec<T>` and `T` to implement `std::convert::Into<OsString>` or `#[clap(value_enum)]`
 //!   - `<expr>` must implement `IntoIterator<T>`
 //!
-//! ### Value Enum Attributes
+//! ### ValueEnum Attributes
 //!
 //! - `rename_all = <string_literal>`: Override default field / variant name case conversion for [`PossibleValue::new`][crate::PossibleValue]
 //!   - When not present: `"kebab-case"`


Test patch: