DefaultSchema<O> class

Uses a default value when the input is missing. Made by .defaultTo().

Inheritance
Mixed-in types

Constructors

DefaultSchema(Schema<O> inner, O defaultValue)

Properties

defaultValue → O
Value used when the input is missing.
final
description ↔ String?
Text for docs. Set with .describe().
getter/setter pairinherited
examples → List<Object?>
Example values for docs. Set with .example().
finalinherited
hashCode → int
The hash code for this object.
no setterinherited
inner → Schema<O>
The wrapped schema.
final
isAsync → bool
true when this schema or a child has async rules.
no setteroverride
isOptional → bool
true when the value may be missing in an object.
no setteroverride
rules → List<Rule<O>>
Rules that run after the type check.
finalinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
vendor → String
Name of the library that made the schema. Dox schemas use dox.
no setterinherited
version → int
Version of the Standard Schema interface. Always 1.
no setterinherited

Methods

addRequiredIssue(Object? input, ParseState state, List<Object> path) → void
Add the required issue.
inherited
addTypeIssue({required String code, required String fallback, required Object? input, required ParseState state, required List<Object> path}) → void
Add a wrong type issue, like "must be a string".
inherited
copyBaseInto<T extends BaseSchema<O>>(T target) → T
Copy rules and meta data from this schema into target.
inherited
copySchema() → DefaultSchema<O>
Make a copy with the same settings. Used by the fluent methods.
override
defaultTo(O value) → DefaultSchema<O>
Use value when the input is missing. (default is a reserved word in Dart.)
inherited
describe(String text) → DefaultSchema<O>
Add a description for docs (JSON Schema description).
inherited
example(Object? value) → DefaultSchema<O>
Add an example value for docs (JSON Schema examples).
inherited
jsonSchemaBase() → Map<String, dynamic>
JSON Schema keys for the type, like {'type': 'string'}.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
nullable() → NullableSchema<O>
The value may be null. It must still be present in an object.
inherited
nullish() → OptionalSchema<O?>
The value may be missing or null.
inherited
optional() → OptionalSchema<O>
The value may be missing. null is still not allowed.
inherited
parse(Object? input, {MessageResolver? messages}) → O
Return the typed output or throw ValidationException.
inherited
parseAsync(Object? input, {MessageResolver? messages}) → Future<O>
Async version of parse. Needed for async rules.
inherited
parseType(Object? input, ParseState state, List<Object> path) → Object?
Check the type and return the output, or invalid. input is never null or undefined here.
override
parseTypeAsync(Object? input, ParseState state, List<Object> path) → Future<Object?>
Async version of parseType. Container schemas override it.
inherited
parseValue(Object? input, ParseState state, List<Object> path) → Object?
Parse one value: check missing values, the type, then the rules.
override
parseValueAsync(Object? input, ParseState state, List<Object> path) → Future<Object?>
Async version of parseValue.
override
refine(bool check(O value), {String? message, String code = 'custom', List<Object> path = const <Object>[]}) → DefaultSchema<O>
Add a one-off check. path is added to the issue path, which is handy for object checks like "passwords must match".
inherited
refineAsync(Future<bool> check(O value), {String? message, String code = 'custom', List<Object> path = const <Object>[]}) → DefaultSchema<O>
Add an async one-off check, like "email is unique". Use parseAsync with it.
inherited
runRules(Object? output, int issuesBefore, ParseState state, List<Object> path) → Object?
Run rules on output. Skipped when the value already has issues.
inherited
runRulesAsync(Object? output, int issuesBefore, ParseState state, List<Object> path) → Future<Object?>
Async version of runRules.
inherited
safeParse(Object? input, {MessageResolver? messages}) → ParseResult<O>
Return a ParseResult. It never throws for bad input.
inherited
safeParseAsync(Object? input, {MessageResolver? messages}) → Future<ParseResult<O>>
Async version of safeParse.
inherited
superRefine(void check(O value, RuleContext context)) → DefaultSchema<O>
Add a check that can add many issues with context.addIssue().
inherited
superRefineAsync(Future<void> check(O value, RuleContext context)) → DefaultSchema<O>
Async version of superRefine.
inherited
toJsonSchema() → Map<String, dynamic>
JSON Schema (draft 2020-12, OpenAPI 3.1) for this schema.
inherited
toString() → String
A string representation of this object.
inherited
transform<T>(T transformer(O value)) → TransformSchema<O, T>
Change the output after it passes validation.
inherited
use(Rule<O> rule) → DefaultSchema<O>
Add a reusable Rule.
inherited
validate(Object? value) → FutureOr<StandardResult<O>>
Standard Schema entry point.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited