/
usr
/
share
/
guile
/
3.0
/
sxml
/
upstream
/
/usr/share/guile/3.0/sxml/upstream
mkdir
upload
Name
Size
Mode
Actions
assert.scm
1395
0644
edit
dl
rm
input-parse.scm
13649
0644
edit
dl
rm
SSAX.scm
126299
0644
edit
dl
rm
SXML-tree-trans.scm
10081
0644
edit
dl
rm
SXPath-old.scm
41768
0644
edit
dl
rm
Edit:
/usr/share/guile/3.0/sxml/upstream/assert.scm
(1395B)
; ; syntax: assert ?expr ?expr ... [report: ?r-exp ?r-exp ...] ; ; If (and ?expr ?expr ...) evaluates to anything but #f, the result ; is the value of that expression. ; If (and ?expr ?expr ...) evaluates to #f, an error is reported. ; The error message will show the failed expressions, as well ; as the values of selected variables (or expressions, in general). ; The user may explicitly specify the expressions whose ; values are to be printed upon assertion failure -- as ?r-exp that ; follow the identifier 'report:' ; Typically, ?r-exp is either a variable or a string constant. ; If the user specified no ?r-exp, the values of variables that are ; referenced in ?expr will be printed upon the assertion failure. (define-syntax assert (syntax-rules (report:) ((assert "doit" (expr ...) (r-exp ...)) (cond ((and expr ...) => (lambda (x) x)) (else (error "assertion failure: ~a" (list '(and expr ...) r-exp ...))))) ((assert "collect" (expr ...)) (assert "doit" (expr ...) ())) ((assert "collect" (expr ...) report: r-exp ...) (assert "doit" (expr ...) (r-exp ...))) ((assert "collect" (expr ...) expr1 stuff ...) (assert "collect" (expr ... expr1) stuff ...)) ((assert stuff ...) (assert "collect" () stuff ...)))) (define-syntax assure (syntax-rules () ((assure exp error-msg) (assert exp report: error-msg))))
Save
cmd:
run