Equatable class abstract mixin

A base class to facilitate operator == and hashCode overrides.

class Person extends Equatable {
  const Person(this.name);

  final String name;

  @override
  List<Object> get props => [name];
}

Equatable can also be used as a mixin

class Person with Equatable {...}
Annotations
  • @immutable

Constructors

Equatable()
A base class to facilitate operator == and hashCode overrides.
const

Properties

hashCode → int
The hash code for this object.
no setteroverride
props → List<Object?>
The list of properties that will be used to determine whether two instances are equal.
no setter
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
stringify → bool?
If set to true, the toString method will be overridden to output this instance's props.
no setter

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.
override