description

# 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 went wrong, so the ArgumentError.value constructor is the preferred constructor. Use ArgumentError.new only when the value cannot be provided for some reason.

Inheritance
  - Object
  - Error
  - ArgumentError
Implementers
  - IndexError
  - RangeError

## Constructors

ArgumentError([dynamic message, @Since.new("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`.

## Properties

hashCode → int
  The hash code for this object.
  no setterinherited
invalidValue → dynamic
  The invalid value.
  final
message → dynamic
  Message describing the problem.
  final
name → String?
  Name of the invalid argument, if available.
  final
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

## Methods

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

## Operators

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

## Static Methods

checkNotNull<T>(T? argument, [String? name]) → T
  Throws if `argument` is `null`.