lr35902ish racket
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

22 lines
566B

  1. #lang racket/base
  2. (require "parser.rkt" "tokenizer.rkt")
  3. (require syntax/strip-context)
  4. (module+ reader
  5. (provide read-syntax get-info))
  6. (define (read-syntax path port)
  7. (define parse-tree (parse path (make-tokenizer port path)))
  8. (strip-context
  9. #`(module zybino-mod zybino/expander
  10. #,parse-tree)))
  11. (define (get-info port src-mod src-line src-col src-pos)
  12. (define (handle-query key default)
  13. (case key
  14. [(colour-lexer)
  15. (dynamic-require 'zybino/colourer 'zybino-colourer)]
  16. [else default]))
  17. handle-query)