From cb140d5910fd9589db824f37ea5abf72491ac69d Mon Sep 17 00:00:00 2001 From: Albert Meltzer <7529386+kitbellew@users.noreply.github.com> Date: Thu, 23 Nov 2023 07:33:23 -0800 Subject: [PATCH] Regex: use pattern.matcher.find, not findFirstIn --- .../src/main/scala/org/scalafmt/cli/ScalafmtRunner.scala | 4 ++-- .../src/main/scala/org/scalafmt/config/FilterMatcher.scala | 4 ++-- .../shared/src/main/scala/org/scalafmt/util/StyleMap.scala | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/scalafmt-cli/src/main/scala/org/scalafmt/cli/ScalafmtRunner.scala b/scalafmt-cli/src/main/scala/org/scalafmt/cli/ScalafmtRunner.scala index ba94c2b8bd..4f6024aa14 100644 --- a/scalafmt-cli/src/main/scala/org/scalafmt/cli/ScalafmtRunner.scala +++ b/scalafmt-cli/src/main/scala/org/scalafmt/cli/ScalafmtRunner.scala @@ -69,7 +69,7 @@ trait ScalafmtRunner { options.respectProjectFilters, options.customFilesOpt.getOrElse(Seq.empty): _* ) - val excludeRegexp = options.excludeFilterRegexp - files.filter { f => excludeRegexp.findFirstIn(f.toString()).isEmpty } + val excludeRegexp = options.excludeFilterRegexp.pattern + files.filter { f => !excludeRegexp.matcher(f.toString()).find() } } } diff --git a/scalafmt-core/shared/src/main/scala/org/scalafmt/config/FilterMatcher.scala b/scalafmt-core/shared/src/main/scala/org/scalafmt/config/FilterMatcher.scala index 7c7a4f797f..1c01238a8c 100644 --- a/scalafmt-core/shared/src/main/scala/org/scalafmt/config/FilterMatcher.scala +++ b/scalafmt-core/shared/src/main/scala/org/scalafmt/config/FilterMatcher.scala @@ -7,8 +7,8 @@ import org.scalafmt.sysops.AbsoluteFile case class FilterMatcher(include: Regex, exclude: Regex) { def matchesFile(file: AbsoluteFile): Boolean = matches(file.toString()) def matches(input: String): Boolean = - include.findFirstIn(input).isDefined && - exclude.findFirstIn(input).isEmpty + include.pattern.matcher(input).find() && + !exclude.pattern.matcher(input).find() } object FilterMatcher { diff --git a/scalafmt-core/shared/src/main/scala/org/scalafmt/util/StyleMap.scala b/scalafmt-core/shared/src/main/scala/org/scalafmt/util/StyleMap.scala index c21f0faf27..2da884c34f 100644 --- a/scalafmt-core/shared/src/main/scala/org/scalafmt/util/StyleMap.scala +++ b/scalafmt-core/shared/src/main/scala/org/scalafmt/util/StyleMap.scala @@ -22,7 +22,7 @@ class StyleMap( ) { import StyleMap._ val literalR: FilterMatcher = init.binPack.literalsRegex - private val prefix = "\\s*scalafmt: ".r + private val prefix = "\\s*scalafmt: ".r.pattern val forcedBinPack: mutable.Set[Tree] = mutable.Set.empty private val ( starts: Array[Int], @@ -48,7 +48,7 @@ class StyleMap( } } tok.left match { - case Comment(c) if prefix.findFirstIn(c).isDefined => + case Comment(c) if prefix.matcher(c).find() => val configured = ScalafmtConfig.fromHoconString(c, init, Some("scalafmt")) // TODO(olafur) report error via callback