(define-record-type :rule-cand (make-rule-cand target prereqs up-to-date?-func build-func) is-rule-cand? (target rule-cand-target) (prereqs rule-cand-prereqs) (up-to-date?-func rule-cand-up-to-date?-func) (build-func rule-cand-build-func))