diff options
author | 2010-10-14 13:28:32 +0200 | |
---|---|---|
committer | 2010-11-13 18:48:18 +0100 | |
commit | 10095abd4840a8c5d21feea8aea477d5f7aa1df7 (patch) | |
tree | 68714320e5262721a044ab32ac5491845d1e9bdb | |
parent | 29f45c45bbd872a3be93e13dbd941b75eb531c39 (diff) | |
download | tekuti-10095abd4840a8c5d21feea8aea477d5f7aa1df7.tar.gz tekuti-10095abd4840a8c5d21feea8aea477d5f7aa1df7.zip |
move up let-request definition
* tekuti/request.scm (let-request): Move definition up.
-rw-r--r-- | tekuti/request.scm | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/tekuti/request.scm b/tekuti/request.scm index f82d22c..7e797ec 100644 --- a/tekuti/request.scm +++ b/tekuti/request.scm @@ -1,5 +1,5 @@ ;; Tekuti -;; Copyright (C) 2008 Andy Wingo <wingo at pobox dot com> +;; Copyright (C) 2008, 2010 Andy Wingo <wingo at pobox dot com> ;; This program is free software; you can redistribute it and/or ;; modify it under the terms of the GNU General Public License as @@ -72,6 +72,23 @@ (method . ,(lambda (r) (header-ref (rref r 'headers '()) "method" "GET"))))) +(define-syntax let-request + (lambda (stx) + (define (make-binding b) + (syntax-case b () + ((id option ...) + (identifier? #'id) + #'(id (rref request-var 'id option ...))) + (id + (identifier? #'id) + #'(id (rref request-var 'id))))) + (syntax-case stx () + ((_ request (binding ...) body ...) + (with-syntax (((binding ...) (map make-binding #'(binding ...)))) + #'(let ((request-var request)) + (let (binding ...) + body ...))))))) + (define (request-form-data request) (let-request request (headers post-data) (if (string-null? post-data) @@ -129,23 +146,6 @@ #f) #f))))) -(define-syntax let-request - (lambda (stx) - (define (make-binding b) - (syntax-case b () - ((id option ...) - (identifier? #'id) - #'(id (rref request-var 'id option ...))) - (id - (identifier? #'id) - #'(id (rref request-var 'id))))) - (syntax-case stx () - ((_ request (binding ...) body ...) - (with-syntax (((binding ...) (map make-binding #'(binding ...)))) - #'(let ((request-var request)) - (let (binding ...) - body ...))))))) - (define-syntax path-proc-case (lambda (stx) (define (optional-argument? arg) |