Uncomment query-value and friends. May need tweaks.

This commit is contained in:
Tony Garnock-Jones 2018-04-30 22:48:50 +01:00
parent ec0933ffdd
commit 475e6527f3
1 changed files with 34 additions and 34 deletions

View File

@ -28,17 +28,17 @@
let-event let-event
;; query-value query-value
;; query-set ;; query-set
;; query-hash ;; query-hash
;; query-hash-set ;; query-hash-set
;; query-count ;; query-count
;; query-value* query-value*
;; query-set* ;; query-set*
;; query-hash* ;; query-hash*
;; query-hash-set* ;; query-hash-set*
;; query-count* ;; query-count*
;; define/query-value define/query-value
;; define/query-set ;; define/query-set
;; define/query-hash ;; define/query-hash
;; define/query-hash-set ;; define/query-hash-set
@ -431,39 +431,39 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Queries ;; Queries
;; (begin-for-syntax (begin-for-syntax
;; (define-splicing-syntax-class on-add (define-splicing-syntax-class on-add
;; (pattern (~optional (~seq #:on-add expr) #:defaults ([expr #f])))) (pattern (~optional (~seq #:on-add expr) #:defaults ([expr #f]))))
;; (define-splicing-syntax-class on-remove (define-splicing-syntax-class on-remove
;; (pattern (~optional (~seq #:on-remove expr) #:defaults ([expr #f])))) (pattern (~optional (~seq #:on-remove expr) #:defaults ([expr #f]))))
;; (define (schedule-query-handler-stxs maybe-expr-stx) (define (schedule-query-handler-stxs maybe-expr-stx)
;; (if maybe-expr-stx (if maybe-expr-stx
;; (quasisyntax/loc maybe-expr-stx (quasisyntax/loc maybe-expr-stx
;; ((schedule-script! #:priority *query-handler-priority* ((schedule-script! #:priority *query-handler-priority*
;; (lambda () #,maybe-expr-stx)))) (lambda () #,maybe-expr-stx))))
;; #'()))) #'())))
;; (define-syntax (query-value stx) (define-syntax (query-value stx)
;; (syntax-parse stx (syntax-parse stx
;; [(_ field-name absent-expr args ...) [(_ field-name absent-expr args ...)
;; (quasisyntax/loc stx (quasisyntax/loc stx
;; (let () (let ()
;; (field [field-name absent-expr]) (field [field-name absent-expr])
;; (query-value* field-name absent-expr args ...)))])) (query-value* field-name absent-expr args ...)))]))
;; (define-syntax (query-value* stx) (define-syntax (query-value* stx)
;; (syntax-parse stx (syntax-parse stx
;; [(_ field-name absent-expr P expr on-add:on-add on-remove:on-remove) [(_ field-name absent-expr P expr on-add:on-add on-remove:on-remove)
;; (quasisyntax/loc stx (quasisyntax/loc stx
;; (let ((F field-name)) (let ((F field-name))
;; (on (asserted P) #:priority *query-priority* (on (asserted P) #:priority *query-priority*
;; #,@(schedule-query-handler-stxs (attribute on-add.expr)) #,@(schedule-query-handler-stxs (attribute on-add.expr))
;; (F expr)) (F expr))
;; (on (retracted P) #:priority *query-priority-high* (on (retracted P) #:priority *query-priority-high*
;; #,@(schedule-query-handler-stxs (attribute on-remove.expr)) #,@(schedule-query-handler-stxs (attribute on-remove.expr))
;; (F absent-expr)) (F absent-expr))
;; F))])) F))]))
;; (define-syntax (query-set stx) ;; (define-syntax (query-set stx)
;; (syntax-parse stx ;; (syntax-parse stx
@ -569,7 +569,7 @@
;; [n (hash-set F0 E (- n 1))]))))) ;; [n (hash-set F0 E (- n 1))])))))
;; F))])) ;; F))]))
;; (define-syntax-rule (define/query-value id ae P x ...) (define id (query-value id ae P x ...))) (define-syntax-rule (define/query-value id ae P x ...) (define id (query-value id ae P x ...)))
;; (define-syntax-rule (define/query-set id P x ...) (define id (query-set id P x ...))) ;; (define-syntax-rule (define/query-set id P x ...) (define id (query-set id P x ...)))
;; (define-syntax-rule (define/query-hash id P x ...) (define id (query-hash id P x ...))) ;; (define-syntax-rule (define/query-hash id P x ...) (define id (query-hash id P x ...)))
;; (define-syntax-rule (define/query-hash-set id P x ...) (define id (query-hash-set id P x ...))) ;; (define-syntax-rule (define/query-hash-set id P x ...) (define id (query-hash-set id P x ...)))