42 lines
1.4 KiB
Plaintext
42 lines
1.4 KiB
Plaintext
; --------------------
|
|
; --- masterfile.l ---
|
|
; --------------------
|
|
|
|
; A SIlex configuration file for masterfiles.
|
|
; For more information about SILex visit: http://www.iro.umontreal.ca/~dube/
|
|
|
|
; This file is part of the Scheme Untergrund Networking package
|
|
|
|
; Copyright (c) 2005/2006 by Norbert Freudemann
|
|
; <nofreude@informatik.uni-tuebingen.de>
|
|
; For copyright information, see the file COPYING which comes with
|
|
; the distribution.
|
|
|
|
dchars [^\n();@ ] ;; last two chars are space and tabulator
|
|
space [ ] ;; space and tabulator
|
|
|
|
%%
|
|
|
|
{space} (yycontinue)
|
|
\n 'newline
|
|
\n{space} 'blank-newline
|
|
\; (let loop ((c (yygetc)))
|
|
(cond
|
|
((eq? 'eof c) 'eof)
|
|
((char=? #\newline c)
|
|
(begin
|
|
(yyungetc)
|
|
(yycontinue)))
|
|
(else (loop (yygetc)))))
|
|
\( 'left-par
|
|
\) 'right-par
|
|
(\$)ORIGIN 'origin
|
|
(\$)INCLUDE 'include
|
|
(\$)GENERATE 'generate
|
|
(\$)TTL 'ttl
|
|
\@ 'origin-ref
|
|
{dchars}* yytext
|
|
|
|
<<EOF>> 'eof
|
|
<<ERROR>> (error (yygetc))
|