(zilch lang rust): initial commit
This commit is contained in:
parent
d52a1e7796
commit
5380ac9307
12 changed files with 1392 additions and 3 deletions
|
|
@ -4,7 +4,7 @@
|
|||
(chicken base) (chicken format)
|
||||
(srfi 152))
|
||||
(export
|
||||
version-major version-minor version-patch version-prerelease version-build-metadata
|
||||
make-version version-major version-minor version-patch version-prerelease version-build-metadata
|
||||
version-str parse-version
|
||||
version=? version<?)
|
||||
|
||||
|
|
@ -36,8 +36,9 @@
|
|||
|
||||
(define (parse-version version-string)
|
||||
(define version-string-length (string-length version-string))
|
||||
(define separators '(#\. #\+ #\-))
|
||||
(define (is-terminator ch)
|
||||
(member ch '(#\. #\+ #\-)))
|
||||
(member ch separators))
|
||||
(define (parse-until-next-splat index)
|
||||
(define out-list '())
|
||||
(define (tick)
|
||||
|
|
@ -57,6 +58,7 @@
|
|||
(for-each (lambda (p) (when (string=? p "") (error "Version string contains empty part" version-string))) version-parts)
|
||||
|
||||
(define prerelease-parts #f)
|
||||
(set! separators '(#\. #\+))
|
||||
(when (and next-index (char=? version-terminator #\-))
|
||||
(let-values (((parts-tmp next-index-tmp terminator-tmp) (parse-until-next-splat (+ next-index 1))))
|
||||
(set! prerelease-parts parts-tmp)
|
||||
|
|
|
|||
|
|
@ -117,7 +117,7 @@
|
|||
|
||||
(define (iter-unquote-handler val handlers)
|
||||
(if (eq? handlers '())
|
||||
(error "Cannot unquote this value.")
|
||||
(error "Cannot unquote this value." val)
|
||||
(let ((result ((car handlers) val)))
|
||||
(if (eq? result #f)
|
||||
(iter-unquote-handler val (cdr handlers))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue