You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/docs/reference/contextual/derivation.md
+4-3Lines changed: 4 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -123,7 +123,7 @@ Note the following properties of `Mirror` types,
123
123
+ Properties are encoded using types rather than terms. This means that they have no runtime footprint unless used and
124
124
also that they are a compile time feature for use with Scala 3's metaprogramming facilities.
125
125
+ The kinds of `MirroredType` and `MirroredElemTypes` match the kind of the data type the mirror is an instance for.
126
-
This allows `Mirrors` to support ADTs of all kinds.
126
+
This allows `Mirror`s to support ADTs of all kinds.
127
127
+ There is no distinct representation type for sums or products (ie. there is no `HList` or `Coproduct` type as in
128
128
Scala 2 versions of Shapeless). Instead the collection of child types of a data type is represented by an ordinary,
129
129
possibly parameterized, tuple type. Scala 3's metaprogramming facilities can be used to work with these tuple types
@@ -167,7 +167,6 @@ The low-level method we will use to implement a type class `derived` method in t
167
167
type-level constructs in Scala 3: inline methods, inline matches, and implicit searches via `summonInline` or `summonFrom`. Given this definition of the
168
168
`Eq` type class,
169
169
170
-
171
170
```scala
172
171
traitEq[T]:
173
172
defeqv(x: T, y: T):Boolean
@@ -194,7 +193,6 @@ implementation of `summonAll` is `inline` and uses Scala 3's `summonInline` cons
0 commit comments