Page:
frdl/card.h
No results
1
frdl/card.h
dalmurii edited this page 2026-06-09 06:10:55 +00:00
Card
카드는 콜백을 예약하여 이벤트를 발생시킨다.
데이터의 순수성을 보장하기 위해 콜백은 정수로써 추상화된다.
typedef uint_leastenum_t h_frdl_card_eval_t;
카드는 발생시킬 수 있는 이벤트와 소유하고 있는 상태로써 정의할 수 있다.
상태는 아직 정의되지 않았다. 이벤트와 상태는 정적으로 정의되어야 한다.
struct frdl_card { /** simulate that caller use this card to callee. */ h_frdl_card_eval_t m_eval; /** state */ frdl_card_state_t m_state; };
FRDLC0
frdl_eval_card
h_frdl_card_eval_t에 예약된 이벤트를 h_caller -> h_callee 형태로 실행시킨다.
c_lbl_again, c_lbl_pass, c_lbl_fail 셋 중 하나를 반환하는 것이 보장된다.
다른 카드를 실행시킬 수 있을 경우 c_lbl_again을 반환한다.
다른 카드를 실행시킬 수 없을 경우(턴 엔드) c_lbl_pass를 반환한다.
체계에 오류가 발생했을 경우 c_lbl_fail을 반환한다.
/** * frdl_eval_card * */ frdl_cgotolbl_t FRDLC0( h_frdl_card_eval_t h_card_eval, const struct frdl_card* ae2f_restrict h_card, h_frdl_entity_t h_caller, h_frdl_entity_t h_callee, h_frdl_t h_frdl, frdl_cgotolbl_t c_lbl_again, frdl_cgotolbl_t c_lbl_pass, frdl_cgotolbl_t c_lbl_fail );