1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
//! Widget state types passed to [`Context`](crate::Context) widget methods.
//!
//! Each interactive widget (text input, list, tabs, table, etc.) has a
//! corresponding state struct defined here. Create the state once, then pass
//! a `&mut` reference each frame.
use HashSet;
use fs;
use PathBuf;
use ;
use UnicodeWidthStr;
use crateStyle;
use crateResponse;
/// Bare function-pointer validator used by the deprecated positional
/// [`FormState::validate`](crate::widgets::FormState::validate) API.
///
/// Retained for backward compatibility. New code should attach
/// [`Validator`] closures per field via
/// [`FormField::validate`](crate::widgets::FormField::validate); see the
/// [`validators`] module for built-ins.
pub type FormValidator = fn ;
type TextInputValidator = ;
/// Built-in field validator constructors (required / length / email / range /
/// regex / one-of).
///
/// Each function returns a closure suitable for
/// [`FormField::validate`](crate::widgets::FormField::validate) or
/// [`Validator::new`](crate::widgets::Validator::new). All matchers are
/// handwritten — there is no `regex` or email-parsing dependency.
include!;
include!;
include!;
include!;
include!;
include!;