(module xexpr mzscheme (require "private/require.ss") (require-contracts) (require-parameters) (require (lib "xml.ss" "xml")) (define xexpr/c (flat-named-contract "Xexpr" xexpr?)) (provide/contract [xexpr/c flat-contract?] [xexpr? predicate/c] [write-xexpr ([xexpr/c] [output-port?] . opt-> . void?)]) (define write-xexpr (param-lambda (xexpr [output => current-output-port]) (write-xml/content (xexpr->xml xexpr)))) )