double record component는 정확한 정수일 때만 int pattern으로 분기한다

소수부가 없다는 사실만으로 int 범위와 표현 정확성까지 보장되는 것은 아닙니다.

Measurement(double value)value를 int로 정보 손실 없이 표현할 수 있는가

25.0

Measurement(int whole) → 25

25.5

Measurement(double decimal)

3_000_000_000.0

int 범위 밖 → double

NaN/Infinity

double fallback

핵심: record deconstruction과 exact conversion을 한 case에서 확인하고 나머지는 double로 보존합니다.