summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorGravatar Andy Wingo2010-10-14 13:28:32 +0200
committerGravatar Andy Wingo2010-11-13 18:48:18 +0100
commit10095abd4840a8c5d21feea8aea477d5f7aa1df7 (patch)
tree68714320e5262721a044ab32ac5491845d1e9bdb
parent29f45c45bbd872a3be93e13dbd941b75eb531c39 (diff)
downloadtekuti-10095abd4840a8c5d21feea8aea477d5f7aa1df7.tar.gz
tekuti-10095abd4840a8c5d21feea8aea477d5f7aa1df7.zip
move up let-request definition
* tekuti/request.scm (let-request): Move definition up.
-rw-r--r--tekuti/request.scm36
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)