hashCode property

  1. @override
int get hashCode
override

The same three fields firstDifference compares, because == delegates to it — so a fourth field goes in BOTH places, not "both" of == and firstDifference. And if firstDifference ever normalises its inputs, as ActiveModelParams.firstDifference does, hash the normalised values too, or two objects would compare equal with different hashes and break every Map and Set holding them. This one is safe today only because it normalises in the constructor instead.

Implementation

@override
int get hashCode => Object.hash(modelPath, tokenizerPath, activeBackend);