Generalize fixed-length lists to listofs.
Closes PR10057.
This commit is contained in:
parent
35c28f4f66
commit
570df7d665
5
collects/tests/typed-scheme/succeed/pr10057.rkt
Normal file
5
collects/tests/typed-scheme/succeed/pr10057.rkt
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
#lang typed-scheme
|
||||||
|
(require scheme/match)
|
||||||
|
(ann (match '(a b c)
|
||||||
|
[(list sym more ...) 1]
|
||||||
|
[else 1]) Integer)
|
|
@ -31,6 +31,7 @@
|
||||||
(match t*
|
(match t*
|
||||||
[(Value: '()) (-lst Univ)]
|
[(Value: '()) (-lst Univ)]
|
||||||
[(Value: 0) -Nat]
|
[(Value: 0) -Nat]
|
||||||
|
[(List: ts) (-lst (apply Un ts))]
|
||||||
[(? (lambda (t) (subtype t -Nat))) -Nat]
|
[(? (lambda (t) (subtype t -Nat))) -Nat]
|
||||||
[(? (lambda (t) (subtype t -Integer))) -Integer]
|
[(? (lambda (t) (subtype t -Integer))) -Integer]
|
||||||
[(? (lambda (t) (subtype t -Flonum))) -Flonum]
|
[(? (lambda (t) (subtype t -Flonum))) -Flonum]
|
||||||
|
|
Loading…
Reference in New Issue
Block a user