(define-module (tomd job)
#:use-module (srfi srfi-9)
#:export (create-job make-job
- job-command-line
- job-args
- job-start-trigger
- job-end-trigger))
+ job-command-line c-job-cmd
+ job-args c-job-args
+ job-start-trigger c-job-start-trigger
+ job-end-trigger c-job-end-trigger
+ c-check-job))
;;; records
(define-record-type <job>
(start-trigger job-start-trigger)
(end-trigger job-end-trigger))
+;;; this sillyness is because i'm not sure how to expand macros in scm_call
+(define (c-check-job obj)
+ (job? obj))
+
+(define (c-job-cmd obj)
+ (job-command-line obj))
+
+(define (c-job-args obj)
+ (job-args obj))
+
+(define (c-job-start-trigger obj)
+ (job-start-trigger obj))
+
+(define (c-job-end-trigger obj)
+ (job-end-trigger obj))
+
;;; functions
(define (get-keyword-value args keyword default)
(let ((keyword-value (memq keyword args)))
(start-trigger (get-keyword-value rest #:start-trigger 'login))
(end-trigger (get-keyword-value rest #:end-trigger #f)))
;; do thing with keyword-ed variables
- (display "settings:") (newline)
- (format (current-output-port)
- "command-line:~a" command-line)
- (newline)
- (format (current-output-port)
- "args:~a" args)
- (newline)
- (format (current-output-port)
- "start-trigger:~a" start-trigger)
- (newline)
- (format (current-output-port)
- "end-trigger:~a" end-trigger)
- (newline)
+ ;; (display "settings:") (newline)
+ ;; (format (current-output-port)
+ ;; "command-line:~a" command-line)
+ ;; (newline)
+ ;; (format (current-output-port)
+ ;; "args:~a" args)
+ ;; (newline)
+ ;; (format (current-output-port)
+ ;; "start-trigger:~a" start-trigger)
+ ;; (newline)
+ ;; (format (current-output-port)
+ ;; "end-trigger:~a" end-trigger)
+ ;; (newline)
;; create a new object that represents the args given.
(make-job command-line