Simplify list-repository-locations

Simplify `list-repository-location' by extracting the lambda's used and
defining them as separate procedures.
This commit is contained in:
Tom Willemse 2014-03-01 20:30:08 +01:00
parent ea945c83fa
commit 95125d682c
2 changed files with 11 additions and 7 deletions

View file

@ -37,6 +37,7 @@
repo-location
repo-name
repository?
repository<?
same-repository?))
(define show-unchanged-branches? #f)
@ -59,6 +60,10 @@
(define (repository? repo)
(is-a? repo <repository>))
(define (repository<? repo1 repo2)
"Compary REPO1 and REPO2 to see if REPO1 should be considered smaller."
(string<? (repo-location repo1) (repo-location repo2)))
(define-method (branch-pullable (branch <branch>))
(force (slot-ref branch 'pullable)))

View file

@ -43,13 +43,12 @@
(define (list-repository-locations)
"List the registered locations of repositories."
(for-each
(lambda (repo)
(for-each print-repository-location (sort repositories repository<?)))
(define (print-repository-location repo)
"Print the location of REPO."
(display (repo-location repo))
(newline))
(sort repositories
(lambda (s1 s2)
(string<? (repo-location s1) (repo-location s2))))))
(define (registered? repo)
"Check if REPO has been registered."