Lyricdev
GitHub

LYR-MIG0302

an equality or order with another type

hint · spec 14-cli

A note of lyric fix --from-4: Equatable<U>, Ordered<U> or Hashable<U> names a type other than its own, which Lyric 5's interfaces cannot say.

Explanation

Lyric 4's Equatable<T>, Ordered<T> and Hashable<T> took the type to compare with; Lyric 5's compare values of one type, Self. The migration drops the argument where it names the type itself — :: [Equatable<Point>] is :: [Equatable], T :: [Hashable<T>] is T :: [Hashable].

One that names another type, Tag :: [Equatable<int>], is left as written: compare what the two have in common (t.id == 3), or give the method a name of its own.

Example

by hand[LYR-MIG0302] main.lyr:3:32: 'Equatable<int>' compares 'Tag' with 'int'; Lyric 5's 'Equatable' compares values of one type — compare what the two have in common, or give the method a name of its own