Resultados de la búsqueda a petición "shapeless"

3 la respuesta

¿Es el valor implícito ambiguo la única forma en que queremos que el error exista en tiempo de compilación?

trait Foo trait Bar extends Foo def doStuff[T <: Foo](x: T)(implicit ev: T =!:= Foo) = x doStuff(new Foo{}) //ambiguous implicit value doStuff(new Bar)// successfulLa resolución implícita está ocurriendo en el tiempo de compilación, por lo que ...

1 la respuesta

Sin forma: lente genérica parametrizada por clase de caso o campo

Residencia en: import shapeless._ case class Content(field: Int) lens[Content] >> 'fieldEstoy tratando de hacer un método de creación de lentes, algo así: def makeLens[T <: Product](s: Symbol) = lens[T] >> sPero parece no obvio. Es posible de ...

2 la respuesta

¿Cómo puedo usar Shapeless para crear una función que abstraiga sobre arity?

Consideremos un ejemplo específico. Tengo muchas funciones que toman un número variable de argumentos y devuelven unSeq[T]. Decir: def nonNeg(start: Int, count: Int): Seq[Int] = Iterator.from(start).take(count).toSeqPara cada una de esas ...

1 la respuesta

Parametrizar dinámicamente la función Poly1 sin forma

Tengo esta situación (despojada a las partes esenciales) class Foo[L <: HList](columns: L) { class toRecord(row: Row) extends Poly1 { implicit def caseColumn[T] = at[Column[T]] { /* map to a record field */ } } def asRecord = { val resultSet: ...

1 la respuesta

No se puede probar que los tipos singleton son tipos singleton mientras se genera una instancia de clase de tipo

Supongamos que tengo una clase de tipo que demuestra que todos los tipos en un coproducto sin forma son tipos únicos: import shapeless._ trait AllSingletons[A, C <: Coproduct] { def values: List[A] } object AllSingletons { implicit def ...

1 la respuesta

Mapear y reducir / doblar HList de scalaz. Validación

Empecé con algo como esto: def nonEmpty[A] = (msg: String) => (a: Option[A]) => a.toSuccess(msg) val postal: Option[String] = request.param("postal") val country: Option[String] = request.param("country") val params = (postal |> ...

1 la respuesta

¿Cómo requerir una matriz de tamaño constante typesafe en scala?

Necesito algo como esto: def encryptBlock(arr: FixedArray[Size16]) = ??? val blocks = arr.splitFixed[Size16] val encrypted = encryptBlock(FixedArray[Size16]()) Entonces, para asegurarme de que solo recibo una matriz de 128 bits como entrada.

2 la respuesta

Sin forma: convierta una clase de caso en otra con campos en diferente orden

Estoy pensando en hacer algo similar aCopiar campos de forma segura entre clases de casos de diferentes tipos [https://stackoverflow.com/questions/23192760/safely-copying-fields-between-case-classes-of-different-types] pero con campos ...

1 la respuesta

¿Cómo iterar todos los tipos de productos en un coproducto usando sin forma?

Digamos que tengo uncoproducto [https://github.com/milessabin/shapeless/wiki/Feature-overview:-shapeless-2.0.0#coproducts-and-discriminated-unions] (un rasgo sellado) como sealed trait Traity case object Foo extends Traity case class Bar() ...

2 la respuesta

Convertir clases de casos anidados en mapas anidados usando Shapeless

Estoy tratando de resolveresta [https://stackoverflow.com/questions/31528379/scala-macros-for-nested-case-classes-to-map-and-other-way-around] pregunta usando Shapeless, en resumen, se trata de convertir una clase de caso anidada a Map [String, ...