From 4da8d942ce6873bd588ae1919815d7d6e79d92a5 Mon Sep 17 00:00:00 2001 From: xuwei-k <6b656e6a69@gmail.com> Date: Sun, 17 Nov 2024 07:38:40 +0900 Subject: [PATCH] use extension instead of implicit --- .../main/scala/sbt/internal/scripted/FileCommands.scala | 6 +++--- sbt-app/src/main/scala/sbt/AllSyntax.scala | 7 ++----- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/internal/util-scripted/src/main/scala/sbt/internal/scripted/FileCommands.scala b/internal/util-scripted/src/main/scala/sbt/internal/scripted/FileCommands.scala index 330a4681b..596278c25 100644 --- a/internal/util-scripted/src/main/scala/sbt/internal/scripted/FileCommands.scala +++ b/internal/util-scripted/src/main/scala/sbt/internal/scripted/FileCommands.scala @@ -98,10 +98,10 @@ class FileCommands(baseDirectory: File) extends BasicStatementHandler { } } + private type NamedCommand = (String, List[String] => Unit) + // these are for readability of the command list - implicit def commandBuilder(s: String): CommandBuilder = new CommandBuilder(s) - final class CommandBuilder(commandName: String) { - type NamedCommand = (String, List[String] => Unit) + extension (commandName: String) { def nonEmpty(action: List[String] => Unit): NamedCommand = commandName -> { paths => if (paths.isEmpty) diff --git a/sbt-app/src/main/scala/sbt/AllSyntax.scala b/sbt-app/src/main/scala/sbt/AllSyntax.scala index 6d489eff8..3e25cb4c4 100644 --- a/sbt-app/src/main/scala/sbt/AllSyntax.scala +++ b/sbt-app/src/main/scala/sbt/AllSyntax.scala @@ -9,11 +9,8 @@ package sbt private[sbt] trait IOSyntax0 extends IOSyntax1 { - implicit def alternative[A, B](f: A => Option[B]): Alternative[A, B] = new Alternative[A, B] { - override def |(g: A => Option[B]): A => Option[B] = (a: A) => f(a) orElse g(a) + extension [A, B](f: A => Option[B]) { + def |(g: A => Option[B]): A => Option[B] = (a: A) => f(a) orElse g(a) } } private[sbt] sealed trait IOSyntax1 extends sbt.io.IOSyntax with sbt.nio.file.syntax0 -private[sbt] sealed trait Alternative[A, B] { - def |(g: A => Option[B]): A => Option[B] -}