WITH-CONDITION-RESTARTS — 리스타트를 조건과 연결하는 매크로
WITH-CONDITION-RESTARTS — 리스타트를 조건과 연결하는 매크로
조건(condition)이 신호될 때 그 조건과 함께 쓸 수 있는 리스타트들을 지정하는 매크로예요. 동적 환경 안에서 특정 리스타트 목록을 특정 조건에 연결해요.
이 문서는 조건 시스템 관련 매크로입니다. restart-case가 내부적으로 이 매크로를 써서 구현될 만큼 저수준이에요.
시그니처
with-condition-restarts condition-form restarts-form form* => results*
본문
인자와 값 (Arguments and Values)
condition-form— 폼; 평가되어 조건(condition)을 만들어요.condition—condition-form의 평가로 생긴 조건 객체.restart-form— 폼; 평가되어 restart-list를 만들어요.restart-list—restart-form의 평가로 생긴 리스타트 객체들의 목록.forms— 암묵적 progn; 평가돼요.results—forms가 돌려준 값.
설명 (Description)
먼저 condition-form과 restarts-form을 정상적인 왼쪽에서 오른쪽 순서로 평가해요. 이 평가들이 낸 일차 값(primary value)을 각각 condition과 restart-list라고 불러요.
그다음 restart-list의 각 리스타트가 condition과 연결된 동적 환경에서 forms를 평가해요. (Section 9.1.4.2.4, Associating a Restart with a Condition 참고.)
예제 (Examples)
없음.
부수 효과 (Side Effects)
없음.
특이 상황 (Exceptional Situations)
없음.
참고 (Notes)
보통 이 매크로는 코드에서 명시적으로 잘 쓰이지 않아요. restart-case가 흔한 경우들을 문법적으로 더 간결하게 처리해 주거든요.
더 알아보기
restart-case— 리스타트를 선언형으로 설치하는 매크로