11package scala
22
3- import annotation .{ experimental , showAsInfix }
3+ import annotation .showAsInfix
44import compiletime ._
55import compiletime .ops .int ._
66
@@ -22,7 +22,6 @@ sealed trait Tuple extends Product {
2222 runtime.Tuples .toIArray(this )
2323
2424 /** Return a copy of `this` tuple with an element appended */
25- @ experimental
2625 inline def :* [This >: this .type <: Tuple , L ] (x : L ): Append [This , L ] =
2726 runtime.Tuples .append(x, this ).asInstanceOf [Append [This , L ]]
2827
@@ -84,7 +83,6 @@ sealed trait Tuple extends Product {
8483object Tuple {
8584
8685 /** Type of a tuple with an element appended */
87- @ experimental
8886 type Append [X <: Tuple , Y ] <: Tuple = X match {
8987 case EmptyTuple => Y *: EmptyTuple
9088 case x *: xs => x *: Append [xs, Y ]
@@ -96,7 +94,6 @@ object Tuple {
9694 }
9795
9896 /** Type of the initial part of the tuple without its last element */
99- @ experimental
10097 type Init [X <: Tuple ] <: Tuple = X match {
10198 case _ *: EmptyTuple => EmptyTuple
10299 case x *: xs =>
@@ -109,7 +106,6 @@ object Tuple {
109106 }
110107
111108 /** Type of the last element of a tuple */
112- @ experimental
113109 type Last [X <: Tuple ] = X match {
114110 case x *: EmptyTuple => x
115111 case _ *: xs => Last [xs]
@@ -289,12 +285,10 @@ sealed trait NonEmptyTuple extends Tuple {
289285 runtime.Tuples .apply(this , 0 ).asInstanceOf [Head [This ]]
290286
291287 /** Get the initial part of the tuple without its last element */
292- @ experimental
293288 inline def init [This >: this .type <: NonEmptyTuple ]: Init [This ] =
294289 runtime.Tuples .init(this ).asInstanceOf [Init [This ]]
295290
296291 /** Get the last of this tuple */
297- @ experimental
298292 inline def last [This >: this .type <: NonEmptyTuple ]: Last [This ] =
299293 runtime.Tuples .last(this ).asInstanceOf [Last [This ]]
300294
0 commit comments