Renamed private version of define-generics to define-primitive-generics.

This commit is contained in:
Carl Eastlund 2013-07-08 15:59:24 -04:00
parent 8c00abbf48
commit 00ccb5850b
5 changed files with 24 additions and 22 deletions

View File

@ -14,7 +14,8 @@
;; provide a backwards compatible interface (just in case)
;; i.e., exporting prop:ordered-dict as opposed to using a
;; generated hidden property.
(define-generics (ordered-dict gen:ordered-dict prop:ordered-dict ordered-dict?
(define-primitive-generics
(ordered-dict gen:ordered-dict prop:ordered-dict ordered-dict?
#:defined-table dict-def-table
#:defaults ()
;; private version needs all kw args, in order

View File

@ -20,7 +20,8 @@
(let ()
(local-require racket/private/generic)
(define-generics (foo gen:foo prop:foo foo?
(define-primitive-generics
(foo gen:foo prop:foo foo?
#:defined-table dummy
#:defaults ([number? (define (meth foo #:kw kw) kw)])
#:define-contract #f)

View File

@ -1,8 +1,7 @@
#lang racket/base
(require racket/contract/base
racket/contract/combinator
(rename-in "private/generic.rkt"
[define-generics define-generics/pre])
"private/generic.rkt"
(for-syntax racket/base racket/local racket/syntax syntax/stx))
;; Convenience layer on top of racket/private/generic.
@ -66,7 +65,8 @@
(define/with-syntax gen-name (format-id #'name "gen:~a" #'name))
(define/with-syntax prop-name (generate-temporary #'name))
(define/with-syntax table-name table)
#'(define-generics/pre (name gen-name prop-name pred-name
#'(define-primitive-generics
(name gen-name prop-name pred-name
#:defined-table table-name
#:defaults [default ...]
#:define-contract define-generics-contract)

View File

@ -3,7 +3,7 @@
(require racket/private/generic ; to avoid circular dependencies
(for-syntax racket/base))
(define-generics (dict gen:dict prop:dict dict?
(define-primitive-generics (dict gen:dict prop:dict dict?
#:defined-table dict-def-table
#:defaults ()
;; private version needs all kw args, in order

View File

@ -10,8 +10,8 @@
(define-for-syntax (keyword-stx? v)
(keyword? (syntax->datum v)))
(provide define-generics define/generic)
(define-syntax (define-generics stx)
(provide define-primitive-generics define/generic)
(define-syntax (define-primitive-generics stx)
(syntax-case stx () ; can't use syntax-parse, since it depends on us
;; keyword arguments must _all_ be provided _in_order_. For the
;; user-facing version of `define-generics', see racket/generic.