Commit | Line | Data |
---|---|---|
1574685a TTN |
1 | ;;; groupings.alist -*-scheme-*- |
2 | ||
1b09b607 | 3 | ;; Copyright (C) 2002, 2006 Free Software Foundation, Inc. |
1574685a TTN |
4 | ;; |
5 | ;; This program is free software; you can redistribute it and/or | |
53befeb7 NJ |
6 | ;; modify it under the terms of the GNU Lesser General Public License |
7 | ;; as published by the Free Software Foundation; either version 3, or | |
1574685a | 8 | ;; (at your option) any later version. |
53befeb7 NJ |
9 | ;; |
10 | ;; This program is distributed in the hope that it will be useful, but | |
11 | ;; WITHOUT ANY WARRANTY; without even the implied warranty of | |
1574685a | 12 | ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
53befeb7 NJ |
13 | ;; Lesser General Public License for more details. |
14 | ;; | |
15 | ;; You should have received a copy of the GNU Lesser General Public | |
16 | ;; License along with this software; see the file COPYING.LESSER. If | |
17 | ;; not, write to the Free Software Foundation, Inc., 51 Franklin | |
18 | ;; Street, Fifth Floor, Boston, MA 02110-1301 USA | |
1574685a TTN |
19 | |
20 | ;;; Commentary: | |
21 | ||
01f6637c TTN |
22 | ;; This file describes interface element groupings. |
23 | ;; See (scripts scan-api) commentary for more info. | |
1574685a TTN |
24 | ;; NOTE: Order matters; put simple ones first, composites after. |
25 | ;; | |
26 | ;; TODO: Add goops, add math, etc etc. | |
27 | ;; Group `guile-C-API' needs much more serious thought. | |
28 | ||
29 | ;;; Code: | |
01f6637c TTN |
30 | |
31 | ( | |
32 | ||
1574685a TTN |
33 | ;; Integrity checks |
34 | ||
01f6637c | 35 | (C+scheme |
1574685a | 36 | (description "in both groups `scheme' and `C' -- should be empty!") |
01f6637c TTN |
37 | (grok () (lambda (x) |
38 | (and (in-group? x 'Scheme) | |
39 | (in-group? x 'C))))) | |
40 | ||
1574685a TTN |
41 | ;; Embedded foreign libraries |
42 | ||
43 | (embedded-libltdl | |
44 | (description "begins with lt_ -- should become empty over time") | |
45 | (grok () (lambda (x) | |
46 | (name-prefix? x "lt_")))) | |
47 | ||
48 | ;; By name | |
49 | ||
01f6637c TTN |
50 | (libguile-internal |
51 | (description "begins with scm_i_") | |
52 | (grok () (lambda (x) | |
53 | (name-prefix? x "scm_i_")))) | |
54 | ||
1574685a TTN |
55 | (gdb |
56 | (description "begins with gdb_") | |
57 | (grok () (lambda (x) | |
58 | (name-prefix? x "gdb_")))) | |
59 | ||
60 | (coop | |
61 | (description "begins with coop_") | |
62 | (grok () (lambda (x) | |
63 | (name-prefix? x "coop_")))) | |
64 | ||
65 | (gh | |
66 | (description "begins with gh_") | |
67 | (grok () (lambda (x) | |
68 | (name-prefix? x "gh_")))) | |
69 | ||
70 | (g-fdes | |
71 | (description "begins with g and ends with fds") | |
72 | (grok () (lambda (x) | |
73 | (name-prefix? x "g.+fds$")))) | |
74 | ||
75 | (r-fdes | |
76 | (description "begins with r and ends with fds") | |
77 | (grok () (lambda (x) | |
78 | (name-prefix? x "r.+fds$")))) | |
79 | ||
80 | (scm | |
81 | (description "begins with scm_") | |
82 | (grok () (lambda (x) | |
83 | (name-prefix? x "scm_")))) | |
84 | ||
85 | (k | |
86 | (description "constants") | |
87 | (grok () (lambda (x) | |
88 | (name-prefix? x "[_A-Z0-9]+$")))) | |
89 | ||
90 | (POSIX | |
91 | (description "POSIX support") | |
92 | (members ; from docs | |
93 | ||
94 | ;; ports and file descriptors | |
95 | port-revealed set-port-revealed! fileno port->fdes fdopen fdes->ports | |
96 | fdes->inport fdes->outport primitive-move->fdes move->fdes | |
97 | release-port-handle fsync open open-fdes close close-fdes unread-char | |
98 | unread-string pipe dup->fdes dup->inport dup->outport dup dup->port | |
99 | duplicate-port redirect-port dup2 port-mode close-all-ports-except | |
100 | port-for-each setvbuf fcntl flock select | |
101 | O_RDONLY O_WRONLY O_RDWR O_APPEND O_CREAT _IONBF _IOLBF _IOFBF | |
102 | F_DUPFD F_GETFD F_SETFD F_GETFL F_SETFL F_GETOWN F_SETOWN FD_CLOEXEC | |
103 | LOCK_SH LOCK_EX LOCK_UN LOCK_NB | |
104 | ||
105 | ;; file system | |
106 | access? stat lstat readlink chown chmod utime delete-file copy-file | |
107 | rename-file link symlink mkdir rmdir opendir directory-stream? readdir | |
108 | rewinddir closedir sync mknod tmpnam mkstemp! dirname basename | |
109 | R_OK W_OK X_OK F_OK | |
110 | stat:perms stat:type stat:blocks stat:blksize stat:ctime stat:mtime | |
111 | stat:atime stat:size stat:rdev stat:gid stat:uid stat:nlink stat:mode | |
112 | stat:ino stat:dev | |
113 | ||
114 | ;; user information | |
115 | passwd:name passwd:passwd passwd:uid passwd:gid passwd:gecos passwd:dir | |
116 | passwd:shell group:name group:passwd group:gid group:mem | |
117 | getpwuid getpwnam name setpwent getpwent endpwent setpw getpw getgrgid | |
118 | getgrnam setgrent getgrent endgrent setgr getgr cuserid getlogin | |
119 | ||
120 | ;; time | |
121 | tm:sec set-tm:sec tm:min set-tm:min tm:hour set-tm:hour tm:mday set-tm:mday | |
122 | tm:mon set-tm:mon tm:year set-tm:year tm:wday set-tm:wday tm:yday | |
123 | set-tm:yday tm:isdst set-tm:isdst tm:gmtoff set-tm:gmtoff tm:zone | |
124 | set-tm:zone tms:clock tms:utime tms:stime tms:cutime tms:cstime | |
125 | current-time gettimeofday localtime gmtime mktime tzset strftime strptime | |
126 | times get-internal-real-time get-internal-run-time | |
127 | ||
128 | ;; runtime environment | |
129 | program-arguments command-line getenv setenv environ putenv | |
130 | ||
131 | ;; proceses | |
132 | chdir getcwd umask chroot getpid getgroups getppid getuid getgid geteuid | |
133 | getegid setuid setgid seteuid setegid getpgrp setpgid setsid waitpid | |
134 | status:exit-val status:term-sig status:stop-sig system primitive-exit execl | |
135 | execlp execle primitive-fork nice setpriority getpriority | |
136 | WNOHANG WUNTRACED | |
137 | ||
138 | ;; signals | |
139 | kill raise sigaction restore-signals alarm pause sleep usleep setitimer | |
140 | getitimer SIGHUP SIGINT | |
141 | ||
142 | ;; terminals and ptys | |
143 | isatty? ttyname ctermid tcgetpgrp tcsetpgrp | |
144 | ||
145 | ;; pipes -- not included because they are in (ice-9 popen) | |
146 | ||
147 | ;; system identification | |
148 | utsname:sysname utsname:nodename utsname:release utsname:version | |
149 | utsname:machine uname gethostname sethostname software-type | |
150 | ||
151 | ;; locales | |
152 | setlocale | |
153 | LC_ALL LC_COLLATE LC_CTYPE LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME | |
154 | ||
155 | ;; encryption | |
156 | crypt getpass)) | |
157 | ||
01f6637c TTN |
158 | (math |
159 | (description "math functions") | |
160 | (members $abs $acos $acosh $asin $asinh $atan $atan2 $atanh $cos $cosh | |
161 | $exp $expt $log $sin $sinh $sqrt $tan $tanh)) | |
162 | ||
1574685a TTN |
163 | ;; By composition (these must be AFTER their constituent groupings) |
164 | ||
165 | (guile-C-API | |
166 | (description "the official guile API available to C programs") | |
01f6637c | 167 | (grok () (lambda (x) |
1574685a TTN |
168 | (and (in-group? x 'C) |
169 | (or (in-group? x 'gh) | |
170 | (in-group? x 'coop) | |
171 | (in-group? x 'gdb)))))) | |
01f6637c TTN |
172 | |
173 | ;; Add new grouping descriptions here. | |
174 | ) | |
175 | ||
1574685a | 176 | ;;; groupings.alist ends here |