Feature request: wiring abstract classes and traits
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 30/100
Línea de trabajo
Comienza con la reproducción en Scala del issue e inspecciona cómo macwire gestiona actualmente los argumentos del constructor, las clases abstractas y los traits. Define como completado que tanto wire[Abs] como wire[T] compilen cuando sus miembros abstractos puedan satisfacerse, preservando el comportamiento de error existente cuando no puedan satisfacerse.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
The following does not compile:
object Foo {
trait Dep
abstract class Abs {
def foo: Dep
}
trait T {
def bar: Dep
}
val d: Dep = new Dep {}
val a: Abs = wire[Abs]
val t: T = wire[T]
def main(args: Array[String]): Unit =
println(s"a.foo ${a.foo}")
}
MacWire says
Error: class Abs is abstract; cannot be instantiated
val a: Abs = wire[Abs]
Error: Cannot find a public constructor nor a companion object for [Foo.T]
val t: T = wire[T]
It would be nice if macwire could wire abstract classes and traits when it can satisfy abstract members like it does for constructor args.
- Lenguaje dominante
- Scala
- Estrellas
- 1.3k
- Forks
- 77
- Merge medio
- 21 h 6 min
- PR fusionados (30 d)
- 1
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de softwaremill/macwire
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
softwaremill/macwire#412 · 3 comentarios ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
softwaremill/macwire#391 · 1 comentario ·
-
macrosakka Pekko alternativeAbierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
softwaremill/macwire#301 · 2 comentarios ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
softwaremill/macwire#281 · 5 comentarios ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
softwaremill/macwire#278 · 3 comentarios ·
Todos los issues de softwaremill/macwire
Issues similares
-
Python remote agent example reports tool calls under `tool_trace`, which the decoder ignoresAbiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
salesforce/evalon#16 ·
-
Native from_json with a schema that repeats a field name fails with "ArrowArray struct has 2 children (expected 1)"Posiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertoarea:expressions area:ffi bug good first issue priority:medium
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
apache/datafusion-comet#6592 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
chipsalliance/chisel#5504 ·
Los mantenedores suelen responder en 1 día
-
documentation good first issue
Dificultad 2/5 Medio día Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
Homebrew formula 2.1.26: 'cs completions bash' fails (exit 127) because bin/cs is not executableAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día