Scala에서 부분 함수의 도메인을 가져올 수 있습니까?스칼라에서 부분 함수의 도메인을 가져 오는 방법은 무엇입니까?
예 : 값 1과 2를 나타냅니다
val list = f.getDomain
:
val f: PartialFunction[Int, Unit] = {
case 1 => println("This is 1")
case 2 => println("This is 2")
}
같은 것을 얻을 방법이 있나요?
업데이트 : 알림 시스템 (이벤트 버스)을 구축하려고합니다. 가입자는 다음과 같이 표시됩니다 내 NotiticationService에서
class SomeSubscriber extends Subscriber {
notifications {
case LoginEvent(date) => println("Login on " + date)
case LogoutEvent(date) => println("Logout on " + date)
case e: Notification[Any] => async {
println("Other notification: " + e)
ui {
println("UI in async! " + e)
}
}
}
}
(이벤트 디스패처를) 내가 가입자에 푸시 알림을 할 수 있도록 모든 '통지'블록에 선언 된 이벤트에 액세스하려고합니다. 어떻게해야합니까?
미리 감사드립니다. 당신이 컬렉션을 가지고, 당신은 또한 f
의 영역에 속하는 요소를 알고 싶은 경우
어쨌든 합리적인 계산량에서 소수가 정의 된 부분 함수를 고려하십시오 (getDomain은 모든 소수를 반환해야합니다) –
거기에 포인트가 있습니다. 나는 스칼라 컴파일러가 어떻게 든 도와 줄 수있을 것이라고 생각했다. (예제에서 도메인을 쉽게 검색 할 수 있어야한다.) 감사합니다. – d4rkang3l
도메인에 액세스하려면 대신'Map'을 사용하십시오. – ziggystar