(module pict mzscheme
(require "private/pict.ss"
"private/core-layout.ss"
"private/loc-wrapper.ss"
"reduction-semantics.ss"
(lib "mred.ss" "mred")
(lib "mrpict.ss" "texpict")
(lib "contract.ss"))
(provide/contract
[reduction-relation->pict (-> reduction-relation? pict?)]
[reduction-relation->ps (-> reduction-relation?
(union string? path?)
void?)]
[language->pict
(-> compiled-lang?
(or/c false/c (cons/c symbol? (listof symbol?)))
pict?)]
[language->ps
(-> compiled-lang?
(or/c false/c (cons/c symbol? (listof symbol?)))
(union path? string?)
void?)])
(provide metafunction->pict
metafunction->ps)
(provide/contract
[label-style parameter? (parameter/c text-style/c)]
[literal-style parameter? (parameter/c text-style/c)]
[metafunction-style parameter? (parameter/c text-style/c)]
[default-style parameter? (parameter/c text-style/c)]
[non-terminal-style parameter? (parameter/c text-style/c)]
[non-terminal-subscript-style parameter? (parameter/c text-style/c)])
(provide/contract
[rule-pict-style parameter? (parameter/c (symbols 'vertical 'vertical-overlapping-side-conditions
'horizontal))])
(provide/contract
[label-font-size parameter? (parameter/c (and/c (between/c 1 255) integer?))]
[default-font-size parameter? (parameter/c (and/c (between/c 1 255) integer?))]
[metafunction-font-size parameter? (parameter/c (and/c (between/c 1 255) integer?))])
(provide
build-loc-wrapper
loc-wrapper?
loc-wrapper-e
loc-wrapper-line
loc-wrapper-line-span
loc-wrapper-column
loc-wrapper-column-span)
(provide/contract
[just-before (-> string? loc-wrapper? loc-wrapper?)]
[just-after (-> string? loc-wrapper? loc-wrapper?)])
(provide with-unquote-rewriter)
)