Crystallise class

Annotation to mark a class for code generation by Crystallis.

TODO(kerberjg): more docs

Annotations
  • @Target.new({TargetKind.classType})

Constructors

Crystallise({bool mutable = true, bool toString = true, bool equals = true, bool hashCode = true, bool useDeepEquality = false, bool copyWith = true, bool useDeepCopy = false, bool deserialize = true, Crystallis? config})
Creates a Crystallise annotation.
const

Properties

config → Crystallis
The Crystallis configuration for this data class
no setter
enableCopyWith → bool
Whether a copyWith method should be generated. (default: true)
final
enableDeserialize → bool
Whether a deserialize constructor should be generated. (default: true)
final
enableEquals → bool
Whether an equals method should be generated. (default: true)
final
enableHashCode → bool
Whether a hashCode method should be generated. (default: true)
final
enableToString → bool
Whether a toString method should be generated. (default: true)
final
hashCode → int
The hash code for this object.
no setterinherited
mutable → bool
Whether the generated data class is mutable. (default: true)
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
useDeepCopy → bool
Whether copyWith should use deep collection copy for lists, sets, and maps. (default: false)
final
useDeepEquality → bool
Whether hashCode and equals should use deep collection equality for lists, sets, and maps. (default: false)
final

Methods

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

Operators

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