Replace Option pattern matching with combinators
Recipe ID
org.openrewrite.scala.recipes.cleanup.SimplifyOptionMatchArtifact
io.moderne.recipe:recipes-scalaRewrites option match { case Some(x) => ...; case None => ... } into the equivalent map, flatMap, or getOrElse combinator. Matches whose None branch yields None become map (when the Some branch wraps its result in Some) or flatMap; matches whose Some branch returns the bound value unchanged become getOrElse, which also covers a None branch that throws (its by-name argument keeps the throw lazy).
Usage
This recipe has no required configuration options. You’ll need the Moderne CLI configured before running the command below.
mod run . --recipe org.openrewrite.scala.recipes.cleanup.SimplifyOptionMatchIf the recipe isn’t available locally, install it with:
mod config recipes jar install io.moderne.recipe:recipes-scala:0.3.1Data tables
Structured output this recipe can produce.
- Source files that had resultsSource files that were modified by the recipe run.
org.openrewrite.table.SourcesFileResults - Source files that had search resultsSearch results that were found during the recipe run.
org.openrewrite.table.SearchResults - Source files that errored on a recipeThe details of all errors produced by a recipe run.
org.openrewrite.table.SourcesFileErrors - Recipe performanceStatistics used in analyzing the performance of recipes.
org.openrewrite.table.RecipeRunStats