Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…

Octocat-spinner-32-eaf2f5

Cannot retrieve contributors at this time

file 23 lines (15 sloc) 0.671 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
#lang racket/base

(require racket/contract
         racket/runtime-path
         syntax/modresolve)

(provide/contract [query
                   (module-path? . -> . (listof string?))])

(define-runtime-path record.rkt "record.rkt")

(define ns (make-base-empty-namespace))


;; query: module-path -> (listof string)
;; Given a module, see what permissions it is declaring.
(define (query a-module-path)
  (let ([resolved-path (resolve-module-path a-module-path #f)])
    (parameterize ([current-namespace ns])
      (dynamic-require a-module-path (void)) ;; get the compile-time code running.
      ((dynamic-require-for-syntax record.rkt 'lookup) resolved-path))))
  
Something went wrong with that request. Please try again.