www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit 6e5e8921f4c92e856ae93eaa21f52128a86416ea
parent e6e879fde4e7dca7bddb496c304ba70b1f07c95a
Author: AlexKnauth <alexander@knauth.org>
Date:   Thu, 19 May 2016 23:48:05 -0400

add kw-hash-case-lambda to unstable submod

Diffstat:
Mkw-utils/keyword-lambda.rkt | 2++
Mkw-utils/kw-hash-lambda.rkt | 15+++++++++++++++
2 files changed, 17 insertions(+), 0 deletions(-)

diff --git a/kw-utils/keyword-lambda.rkt b/kw-utils/keyword-lambda.rkt @@ -1,6 +1,8 @@ #lang racket/base (provide keyword-lambda) +(module+ private + (provide keyword-lists-case-lambda)) (require (for-syntax racket/base racket/syntax syntax/parse syntax/name)) diff --git a/kw-utils/kw-hash-lambda.rkt b/kw-utils/kw-hash-lambda.rkt @@ -1,6 +1,8 @@ #lang racket/base (provide kw-hash-lambda) +(module+ unstable + (provide kw-hash-case-lambda)) (require "keyword-lambda.rkt" "kw-hash.rkt" @@ -18,6 +20,19 @@ (let ([kw-hash (keyword-app-make-kw-hash kws kw-args)]) body ...))]))) +(module+ unstable + (require (submod "keyword-lambda.rkt" private)) + + (define-syntax kw-hash-case-lambda + (lambda (stx) + (syntax-parse stx + [(kw-hash-case-lambda #:kws kw-hash:id [rest-args body:expr ...+]) + #'(keyword-lists-case-lambda kws kw-args + [rest-args + (let ([kw-hash (keyword-app-make-kw-hash kws kw-args)]) + body ...)])]))) + ) + (module+ test (test-case "kw-hash-lambda" (define proc