나는 두 개의 레코드를 병합합니다. 내가 대신 a
에 대한 None
의 일반 문자열을 사용하는 경우에는 다음이 더 이상 사실이 아니다 : "pluf" :: Some("plif") :: HNil
및 c.keys
가 Key :: Key :: HNil
입니다 :이 경우 c
에서왜 형식이없는 레코드를 옵션과 병합 할 수없는 것입니까?</p> <pre><code>case object Key val a = (Key ->> Option.empty[String]) :: HNil val b = (Key ->> Option("plif")) :: HNil val c = a.merge(b) </code></pre> <p>을 그리고 우리는 우리가 <code>b == c</code> 있음을 예상하는대로 다음과 같이
case object Key
val a = (Key ->> "pluf") :: HNil
val b = (Key ->> Option("plif")) :: HNil
val c = a.merge(b)
는 것으로 밝혀졌습니다. 뭐라 구요?
차이가 나는 경우 Shapeless 2.1을 사용하고 있습니다.