www

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

keyword-apply-sort.scrbl (950B)


      1 #lang scribble/manual
      2 @(require kw-utils/keyword-apply-sort
      3           racket/base
      4           scribble/eval
      5           (for-label kw-utils/keyword-apply-sort
      6                      racket/base
      7                      racket/contract/base
      8                      racket/math
      9                      ))
     10 
     11 @title[#:tag "keyword-apply-sort.scrbl"]{keyword-apply/sort}
     12 
     13 @defmodule[kw-utils/keyword-apply-sort]
     14 
     15 @defproc[(keyword-apply/sort [f procedure?] [kws (listof keyword?)] [kw-args list?]
     16                              [v any/c] ... [lst list?] [#:<kw> kw-arg any/c] ...) any]{
     17 like @racket[keyword-apply], but without the constraint that the keywords in @racket[kws] must be
     18 sorted.  
     19 
     20 @examples[
     21   (require kw-utils/keyword-apply-sort racket/math)
     22   (define (kinetic-energy #:mass m #:velocity v)
     23     (* 1/2 m (sqr v)))
     24   (keyword-apply/sort kinetic-energy '(#:mass #:velocity) '(2 1) '())
     25   (keyword-apply/sort kinetic-energy '(#:velocity #:mass) '(1 2) '())
     26 ]}