generate-indices.rkt (804B)
1 #lang typed/racket 2 (require "typed-untyped.rkt") 3 (define-typed/untyped-modules #:no-test 4 (provide generate-indices) 5 6 (require "typed-untyped.rkt") 7 (require-typed/untyped "sequence.rkt") 8 (: generate-indices (∀ (T) (case→ (→ Integer (Syntax-Listof T) 9 (Listof Integer)) 10 (→ (Syntax-Listof T) 11 (Listof Nonnegative-Integer))))) 12 13 (define generate-indices 14 (case-lambda 15 [(start stx) 16 (for/list ([v (my-in-syntax stx)] 17 [i (in-naturals start)]) 18 i)] 19 [(stx) 20 (for/list ([v (my-in-syntax stx)] 21 [i : Nonnegative-Integer 22 (ann (in-naturals) (Sequenceof Nonnegative-Integer))]) 23 i)])))