복붙노트

[SCALA] 이 경우 클래스 일치 패턴은 어떻게 작동합니까?

SCALA

이 경우 클래스 일치 패턴은 어떻게 작동합니까?

난 그냥 스칼라 배우 패키지이 경우 클래스를 본 적이 :

case class ! [a](ch: Channel[a], msg: a)

그리고의 JavaDoc에 다음과 같은 형태로 사용을 설명합니다 :

receive {
  case Chan1 ! msg1 => ...
  case Chan2 ! msg2 => ...
}

왜 이런 일이되지 않습니다 :

receive {
  case !(Chan1, msg1) => ...
  case !(Chan2, msg2) => ...
}

뱅 연산자입니다! 콜론으로 끝나는 방법과 유사한 방법으로 특별한 경우 :

해결법

  1. ==============================

    1.패턴 매칭을 할 때, 스칼라 컴파일러 C1 O1 O2 같은 C1로서 (O1, O2)를 해석한다. :: 너무 내부 패턴 일치를 작동하는 이유의 그.

    패턴 매칭을 할 때, 스칼라 컴파일러 C1 O1 O2 같은 C1로서 (O1, O2)를 해석한다. :: 너무 내부 패턴 일치를 작동하는 이유의 그.

  2. from https://stackoverflow.com/questions/1059145/how-is-this-case-class-match-pattern-working by cc-by-sa and MIT license