λ
Size: a a a
λ
AS
SA
А
SA
SA
Oℕ
SA
Oℕ
Oℕ
SA
BK
https://scastie.scala-lang.org/1eZJTbOLRv2Es0vRDYA2KA
BK
fresh
A
A
BK
fresh
и 1 -2 - 1.5 - 1.5 без fresh
. А какой результат вы ожидаете получить ?BK
SM
case class Pers(name: String, age: Int)
class Car(name: String)
val p = Pers("Ivan", 2)
val c = new Car("BMV")
import scala.reflect.runtime.universe._
def getListOfFields(p: Object): List[String] = {
val m = runtimeMirror(p.getClass.getClassLoader)
val symbol = m.classSymbol(p.getClass).typeSignature.typeSymbol.asClass
val ctor = symbol.primaryConstructor
val paramList = ctor.typeSignature.paramLists
paramList.flatten.map(s => s.name.toString)
}
getListOfFields(p)
getListOfFields(c)
//val res3: List[String] = List(name, age)
//val res4: List[String] = List(name)
DZ
case class Pers(name: String, age: Int)
class Car(name: String)
val p = Pers("Ivan", 2)
val c = new Car("BMV")
import scala.reflect.runtime.universe._
def getListOfFields(p: Object): List[String] = {
val m = runtimeMirror(p.getClass.getClassLoader)
val symbol = m.classSymbol(p.getClass).typeSignature.typeSymbol.asClass
val ctor = symbol.primaryConstructor
val paramList = ctor.typeSignature.paramLists
paramList.flatten.map(s => s.name.toString)
}
getListOfFields(p)
getListOfFields(c)
//val res3: List[String] = List(name, age)
//val res4: List[String] = List(name)
DZ