adjust the tooltip check syntax property to insist

on the syntax object itself to identify the source,
instead of just handing over the source

original commit: 8784bd984f26a3a97aec98d9762992b1bddff30f
This commit is contained in:
Robby Findler 2014-10-06 21:16:41 -05:00
parent cb341fdd46
commit edb79ee27b

View File

@ -71,8 +71,7 @@
(define (type-table->tooltips)
(for/fold ([tooltips '()])
([(stx results) (in-hash table)]
#:when (and (syntax-source stx)
(syntax-position stx)
#:when (and (syntax-position stx)
(syntax-span stx))
#:unless (error-at-stx-loc? stx))
;; `printed-types` is #f if we should skip the type because it's
@ -105,17 +104,17 @@
(let ([fst (car (syntax-e stx))])
(and (identifier? fst)
(free-identifier=? fst #'quote))))
(cons (vector (syntax-source stx)
(cons (vector stx
(sub1 (syntax-position stx))
(+ (sub1 (syntax-position stx)) (syntax-span stx))
printed-types)
tooltips)]
[else
(list* (vector (syntax-source stx)
(list* (vector stx
(sub1 (syntax-position stx))
(syntax-position stx)
printed-types)
(vector (syntax-source stx)
(vector stx
(sub1 (+ (sub1 (syntax-position stx))
(syntax-span stx)))
(+ (sub1 (syntax-position stx))