This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
patch based on:
[perl5.git] / keywords.pl
1 #!/usr/bin/perl
2
3 unlink "keywords.h";
4 open(KW, ">keywords.h") || die "Can't create keywords.h: $!\n";
5 select KW;
6
7 print <<EOM;
8 /*
9  *    keywords.h
10  *
11  *    Copyright (c) 1997-2002, Larry Wall
12  *
13  *    You may distribute under the terms of either the GNU General Public
14  *    License or the Artistic License, as specified in the README file.
15  *
16  * !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
17  *  This file is built by keywords.pl from its data.  Any changes made here
18  *  will be lost!
19  */
20 EOM
21
22 # Read & print data.
23
24 $keynum = 0;
25 while (<DATA>) {
26     chop;
27     next unless $_;
28     next if /^#/;
29     ($keyword) = split;
30     print &tab(5, "#define KEY_$keyword"), $keynum++, "\n";
31 }
32
33 ###########################################################################
34 sub tab {
35     local($l, $t) = @_;
36     $t .= "\t" x ($l - (length($t) + 1) / 8);
37     $t;
38 }
39 ###########################################################################
40 __END__
41
42 NULL
43 __FILE__
44 __LINE__
45 __PACKAGE__
46 __DATA__
47 __END__
48 AUTOLOAD
49 BEGIN
50 CORE
51 DESTROY
52 END
53 INIT
54 CHECK
55 abs
56 accept
57 alarm
58 and
59 atan2
60 bind
61 binmode
62 bless
63 caller
64 chdir
65 chmod
66 chomp
67 chop
68 chown
69 chr
70 chroot
71 close
72 closedir
73 cmp
74 connect
75 continue
76 cos
77 crypt
78 dbmclose
79 dbmopen
80 defined
81 delete
82 die
83 do
84 dump
85 each
86 else
87 elsif
88 endgrent
89 endhostent
90 endnetent
91 endprotoent
92 endpwent
93 endservent
94 eof
95 eq
96 err
97 eval
98 exec
99 exists
100 exit
101 exp
102 fcntl
103 fileno
104 flock
105 for
106 foreach
107 fork
108 format
109 formline
110 ge
111 getc
112 getgrent
113 getgrgid
114 getgrnam
115 gethostbyaddr
116 gethostbyname
117 gethostent
118 getlogin
119 getnetbyaddr
120 getnetbyname
121 getnetent
122 getpeername
123 getpgrp
124 getppid
125 getpriority
126 getprotobyname
127 getprotobynumber
128 getprotoent
129 getpwent
130 getpwnam
131 getpwuid
132 getservbyname
133 getservbyport
134 getservent
135 getsockname
136 getsockopt
137 glob
138 gmtime
139 goto
140 grep
141 gt
142 hex
143 if
144 index
145 int
146 ioctl
147 join
148 keys
149 kill
150 last
151 lc
152 lcfirst
153 le
154 length
155 link
156 listen
157 local
158 localtime
159 lock
160 log
161 lstat
162 lt
163 m
164 map
165 mkdir
166 msgctl
167 msgget
168 msgrcv
169 msgsnd
170 my
171 ne
172 next
173 no
174 not
175 oct
176 open
177 opendir
178 or
179 ord
180 our
181 pack
182 package
183 pipe
184 pop
185 pos
186 print
187 printf
188 prototype
189 push
190 q
191 qq
192 qr
193 quotemeta
194 qw
195 qx
196 rand
197 read
198 readdir
199 readline
200 readlink
201 readpipe
202 recv
203 redo
204 ref
205 rename
206 require
207 reset
208 return
209 reverse
210 rewinddir
211 rindex
212 rmdir
213 s
214 scalar
215 seek
216 seekdir
217 select
218 semctl
219 semget
220 semop
221 send
222 setgrent
223 sethostent
224 setnetent
225 setpgrp
226 setpriority
227 setprotoent
228 setpwent
229 setservent
230 setsockopt
231 shift
232 shmctl
233 shmget
234 shmread
235 shmwrite
236 shutdown
237 sin
238 sleep
239 socket
240 socketpair
241 sort
242 splice
243 split
244 sprintf
245 sqrt
246 srand
247 stat
248 study
249 sub
250 substr
251 symlink
252 syscall
253 sysopen
254 sysread
255 sysseek
256 system
257 syswrite
258 tell
259 telldir
260 tie
261 tied
262 time
263 times
264 tr
265 truncate
266 uc
267 ucfirst
268 umask
269 undef
270 unless
271 unlink
272 unpack
273 unshift
274 untie
275 until
276 use
277 utime
278 values
279 vec
280 wait
281 waitpid
282 wantarray
283 warn
284 while
285 write
286 x
287 xor
288 y