File tree Expand file tree Collapse file tree 2 files changed +3
-9
lines changed
compiler/src/dotty/tools/dotc/ast Expand file tree Collapse file tree 2 files changed +3
-9
lines changed Original file line number Diff line number Diff line change @@ -1597,9 +1597,8 @@ object desugar {
1597
1597
AppliedTypeTree (ref(defn.NamedTupleTypeRef ), namesTuple :: tup :: Nil )
1598
1598
else
1599
1599
val Builder_apply = Select (Select (ref(defn.NamedTupleModule ), nme.NamedTupleBuilder ), nme.apply)
1600
- val build = Select (ref(defn.NamedTupleModule ), nme.build)
1601
1600
val builder = TypeApply (Builder_apply , namesTuple :: Nil )
1602
- Apply (Apply (build, builder :: Nil ), tup :: Nil )
1601
+ Apply (Select (builder, nme.build ), tup :: Nil )
1603
1602
1604
1603
/** When desugaring a list pattern arguments `elems` adapt them and the
1605
1604
* expected type `pt` to each other. This means:
Original file line number Diff line number Diff line change @@ -19,13 +19,8 @@ object NamedTuple:
19
19
20
20
def unapply [N <: Tuple , V <: Tuple ](x : NamedTuple [N , V ]): Some [V ] = Some (x)
21
21
22
- object NamedTupleBuilder :
23
- opaque type Builder [N <: Tuple ] = Unit
24
-
25
- @ annotation.compileTimeOnly(" NamedTupleBuilder.apply should be used as the argument to NamedTuple.build" )
26
- def apply [N <: Tuple ]: Builder [N ] = ???
27
-
28
- extension [N <: Tuple ](inline builder : NamedTupleBuilder .Builder [N ])
22
+ @ annotation.compileTimeOnly(" NamedTupleBuilder.Builder should have been eliminated by calling the build method." )
23
+ final class NamedTupleBuilder [N <: Tuple ]():
29
24
inline def build [V <: Tuple ](inline x : V ): NamedTuple [N , V ] = x
30
25
31
26
extension [V <: Tuple ](x : V )
You can’t perform that action at this time.
0 commit comments