ArgumentError class

Error thrown when a function is passed an unacceptable argument.

The method should document restrictions on the arguments it accepts, for example if an integer argument must be non-nullable, a string argument must be non-empty, or a dynamic-typed argument must actually have one of a few accepted types.

The user should be able to predict which arguments will cause an error to be throw, and avoid calling with those.

It's almost always a good idea to provide the unacceptable value as part of the error, to help the user figure out what vent wrong, so the ArgumentError.value constructor is the preferred constructor. Use only when the value cannot be provided for some reason.



ArgumentError([dynamic message, @Since("2.14") String? name])
Creates an error with message describing the problem with an argument.
ArgumentError.notNull([String? name])
Creates an argument error for a null argument that must not be null.
ArgumentError.value(dynamic value, [String? name, dynamic message])
Creates error containing the invalid value.


hashCode int
The hash code for this object.
no setterinherited
invalidValue → dynamic
The invalid value.
message → dynamic
Message describing the problem.
name String?
Name of the invalid argument, if available.
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
stackTrace StackTrace?
The stack trace at the point where this error was first thrown.
no setterinherited


noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
toString() String
A string representation of this object.


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

Static Methods

checkNotNull<@Since("2.8") T>(T? argument, [String? name]) → T
Throws if argument is null.