diff options
| author | Ludovic Courtès <ludo@gnu.org> | 2021-04-14 23:35:00 +0200 |
|---|---|---|
| committer | Ludovic Courtès <ludo@gnu.org> | 2021-04-14 23:35:00 +0200 |
| commit | 095c6f9f859b63fb2e1a3e5c7e1f9adf857f916a (patch) | |
| tree | 47fb0cedef68fac7b7c1adf5594f2b7456f60eb0 | |
| parent | software: Only show projects with at least one member. (diff) | |
software: Guarantee person pointer identity (!).
* software.sxml (define-member): Define 'p'.
| -rw-r--r-- | software.sxml | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/software.sxml b/software.sxml index 3afe7ff..cc6a308 100644 --- a/software.sxml +++ b/software.sxml | |||
| @@ -157,16 +157,17 @@ | |||
| 157 | table)) | 157 | table)) |
| 158 | 158 | ||
| 159 | (define-syntax-rule (define-member person projects ...) | 159 | (define-syntax-rule (define-member person projects ...) |
| 160 | (for-each (lambda (project-id) | 160 | (let ((p person)) |
| 161 | (let ((project | 161 | (for-each (lambda (project-id) |
| 162 | (hash-table-ref %projects project-id | 162 | (let ((project |
| 163 | (lambda () | 163 | (hash-table-ref %projects project-id |
| 164 | (error (format #false | 164 | (lambda () |
| 165 | "Unknown project ~a for ~a~%" | 165 | (error (format #false |
| 166 | project-id name)))))) | 166 | "Unknown project ~a for ~a~%" |
| 167 | (set-project-members! | 167 | project-id name)))))) |
| 168 | project (cons person (project-members project))))) | 168 | (set-project-members! |
| 169 | (quote (projects ...)))) | 169 | project (cons p (project-members project))))) |
| 170 | (quote (projects ...))))) | ||
| 170 | 171 | ||
| 171 | (define-member (person "Carlos O'Donell") | 172 | (define-member (person "Carlos O'Donell") |
| 172 | glibc gcc) | 173 | glibc gcc) |