Skip to content

Commit

Permalink
Removing bunch of useless classtags
Browse files Browse the repository at this point in the history
  • Loading branch information
luksow committed Jul 31, 2024
1 parent 401549c commit a2708ef
Show file tree
Hide file tree
Showing 5 changed files with 7 additions and 12 deletions.
4 changes: 2 additions & 2 deletions enum/src/main/scala-3/pl/iterators/kebs/enums/KebsEnum.scala
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@ package pl.iterators.kebs.enums
import scala.collection.immutable
import scala.compiletime.{constValue, erasedValue, error, summonInline}
import scala.deriving.Mirror
import scala.reflect.{ClassTag, Enum}
import scala.reflect.Enum

import pl.iterators.kebs.core.enums.EnumLike

trait KebsEnum {
inline implicit def kebsEnumScala[E <: Enum](using m: Mirror.SumOf[E], ct: ClassTag[E]): EnumLike[E] = {
inline implicit def kebsEnumScala[E <: Enum](using m: Mirror.SumOf[E]): EnumLike[E] = {
val enumValues = summonCases[m.MirroredElemTypes, E]
new EnumLike[E] {
override def values: immutable.Seq[E] = enumValues.toSeq
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package pl.iterators.kebs.enums

import org.scalacheck.Prop.forAll
import org.scalacheck.{Gen, Properties}
import scala.reflect.{ClassTag, Enum}

import pl.iterators.kebs.core.enums.{ValueEnumLike, ValueEnumLikeEntry}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,11 @@ import enumeratum._
import scala.collection.immutable
import scala.compiletime.{constValue, erasedValue, error, summonInline}
import scala.deriving.Mirror
import scala.reflect.ClassTag

import pl.iterators.kebs.core.enums.EnumLike

trait KebsEnumeratum {
inline implicit def enumLikeFromEnumeratum[E <: EnumEntry](using m: Mirror.SumOf[E], ct: ClassTag[E]): EnumLike[E] = {
inline implicit def enumLikeFromEnumeratum[E <: EnumEntry](using m: Mirror.SumOf[E]): EnumLike[E] = {
val enumValues = summonCases[m.MirroredElemTypes, E]
new EnumLike[E] {
override def values: immutable.Seq[E] = enumValues.toSeq
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,12 @@ import scala.collection.immutable
import enumeratum.values._
import scala.compiletime.{constValue, erasedValue, error, summonInline}
import scala.deriving._
import scala.reflect.ClassTag

import pl.iterators.kebs.core.enums.{ValueEnumLike, ValueEnumLikeEntry}

trait KebsValueEnumeratum {
inline implicit def valueEnumeratumScala3[V, E <: ValueEnumEntry[V] with ValueEnumLikeEntry[V]](using
m: Mirror.SumOf[E],
ct: ClassTag[E]
m: Mirror.SumOf[E]
): ValueEnumLike[V, E] = {
val enumValues = summonValueCases[m.MirroredElemTypes, V, E]
new ValueEnumLike[V, E] {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import cats.effect.IO
import pl.iterators.stir.unmarshalling.PredefinedFromStringUnmarshallers.*
import pl.iterators.stir.unmarshalling.{FromStringUnmarshaller, Unmarshaller}

import scala.reflect.{ClassTag, Enum}
import scala.reflect.Enum

import pl.iterators.kebs.core.enums.{EnumLike, ValueEnumLike, ValueEnumLikeEntry}

Expand All @@ -22,7 +22,7 @@ trait EnumUnmarshallers {
}

trait ValueEnumUnmarshallers extends EnumUnmarshallers {
final def valueEnumUnmarshaller[V, E <: ValueEnumLikeEntry[V]](using `enum`: ValueEnumLike[V, E], cls: ClassTag[V]): Unmarshaller[V, E] =
final def valueEnumUnmarshaller[V, E <: ValueEnumLikeEntry[V]](using `enum`: ValueEnumLike[V, E]): Unmarshaller[V, E] =
Unmarshaller { v =>
`enum`.values.find(e => e.value == v && e.value.getClass == v.getClass) match {
case Some(enumEntry) =>
Expand All @@ -40,8 +40,7 @@ trait ValueEnumUnmarshallers extends EnumUnmarshallers {
}

implicit def kebsValueEnumUnmarshaller[V, E <: ValueEnumLikeEntry[V]](using
`enum`: ValueEnumLike[V, E],
cls: ClassTag[V]
`enum`: ValueEnumLike[V, E]
): Unmarshaller[V, E] =
valueEnumUnmarshaller

Expand Down

0 comments on commit a2708ef

Please sign in to comment.