Unreachable Expressions

Unreachable Expressions

assert-unreachableexn:fail:contract를 일으켜 단언(assertion) 실패를 보고해요. 이는 unsafe-assert-unreachable의 안전한 대응물로서 쓸모가 있어요.

출처: Racket Reference

본문

(assert-unreachable) → none/c

exn:fail:contract를 일으켜 단언 실패를 보고해요. unsafe-assert-unreachable의 안전한 대응물로서 유용하죠.

이 내용은 base 패키지 8.0.0.11 버전에서 추가되었어요.

Customized Unreachable Reporting

이 절에 문서화된 바인딩들은 racket/unreachable 라이브러리가 제공하며, racket/baseracket이 제공하는 게 아니에요.

(require racket/unreachable) ; package: base

이 내용은 base 패키지 8.0.0.11 버전에서 추가되었어요.

(with-assert-unreachable body ...+)

syntax

(assert-unreachable)과 비슷하게, body 폼들에 도달해서는 안 된다고 단언해요.

그 표현식이 (#%declare #:unsafe)를 포함하는 모듈의 일부가 아니라면, (let-values () body ...+)와 동등해요. 의도는 body 폼들이 exn:fail:contract를 일으키게 하는 것이에요.

with-assert-unreachable 표현식이 (#%declare #:unsafe)가 있는 모듈의 일부라면 (unsafe-assert-unreachable)과 동등해요.

더 알아보기