diff --git a/core/src/main/scala/pink/cozydev/protosearch/Field.scala b/core/src/main/scala/pink/cozydev/protosearch/Field.scala index 8fb2d18..e511680 100644 --- a/core/src/main/scala/pink/cozydev/protosearch/Field.scala +++ b/core/src/main/scala/pink/cozydev/protosearch/Field.scala @@ -26,7 +26,7 @@ import pink.cozydev.protosearch.analysis.Analyzer * @param indexed Whether the field value should be indexed for fast querying * @param positions Whether the positions should be indexed for fast phrase querying */ -case class Field( +final case class Field( name: String, analyzer: Analyzer, stored: Boolean, diff --git a/core/src/main/scala/pink/cozydev/protosearch/Hit.scala b/core/src/main/scala/pink/cozydev/protosearch/Hit.scala index ea76714..959be51 100644 --- a/core/src/main/scala/pink/cozydev/protosearch/Hit.scala +++ b/core/src/main/scala/pink/cozydev/protosearch/Hit.scala @@ -22,7 +22,7 @@ package pink.cozydev.protosearch * @param score The score of this result given the query * @param fields Stored fields of the result */ -case class Hit( +final case class Hit( val id: Int, val score: Double, val fields: Map[String, String], diff --git a/core/src/main/scala/pink/cozydev/protosearch/MultiIndex.scala b/core/src/main/scala/pink/cozydev/protosearch/MultiIndex.scala index 7d6868c..1acb61b 100644 --- a/core/src/main/scala/pink/cozydev/protosearch/MultiIndex.scala +++ b/core/src/main/scala/pink/cozydev/protosearch/MultiIndex.scala @@ -16,7 +16,7 @@ package pink.cozydev.protosearch -case class MultiIndex( +final case class MultiIndex( indexes: Map[String, Index], schema: Schema, fields: Map[String, Array[String]], diff --git a/core/src/main/scala/pink/cozydev/protosearch/Scorer.scala b/core/src/main/scala/pink/cozydev/protosearch/Scorer.scala index 8d3bd00..81b28e0 100644 --- a/core/src/main/scala/pink/cozydev/protosearch/Scorer.scala +++ b/core/src/main/scala/pink/cozydev/protosearch/Scorer.scala @@ -24,7 +24,7 @@ import pink.cozydev.protosearch.internal.PositionalIter import java.util.regex.PatternSyntaxException -case class Scorer(index: MultiIndex, defaultOR: Boolean = true) { +final case class Scorer(index: MultiIndex, defaultOR: Boolean = true) { private val defaultIdx: Index = index.indexes(index.schema.defaultField) diff --git a/core/src/main/scala/pink/cozydev/protosearch/analysis/QueryAnalyzer.scala b/core/src/main/scala/pink/cozydev/protosearch/analysis/QueryAnalyzer.scala index 175e9d0..07e32cf 100644 --- a/core/src/main/scala/pink/cozydev/protosearch/analysis/QueryAnalyzer.scala +++ b/core/src/main/scala/pink/cozydev/protosearch/analysis/QueryAnalyzer.scala @@ -23,7 +23,7 @@ import pink.cozydev.lucille.QueryParser // TODO This is a hack, the Lucille parser tokenizes on white space only currently // We perhaps want Lucille to use a tokenizer from textmogrify // In the meantime, we rewrite the Query with our `Analyzer` -case class QueryAnalyzer( +final case class QueryAnalyzer( defaultField: String, analyzers: Map[String, Analyzer], ) {