#{stuff} is equivalent to #stuff except that it's self-delimited and
thus needs not to be placed at the end of line or in some brackets.
<literal>() [] {} '' "" /* */</literal>. Any character may be
preceded by a backslash and will not be treated specially.</para>
+ <para<In addition <literal>#{stuff}</literal> is equivalent
+ to <literal>#stuff</literal> except that it's self-delimited
+ and thus needs not to be placed at the end of line or in some
+ brackets.</para>
+
<para>Meanings of specific keys:</para>
<variablelist>
-----------------------------------------------------------------------------
--- $Id: Main.hs,v 1.22 2001/02/22 22:39:56 qrczak Exp $
+-- $Id: Main.hs,v 1.23 2001/03/01 20:32:51 qrczak Exp $
--
-- (originally "GlueHsc.hs" by Marcin 'Qrczak' Kowalczyk)
--
import List (intersperse)
version :: String
-version = "hsc2hs-0.64"
+version = "hsc2hs-0.65"
data Flag
= Help
pos <- getPosition
char '#'
skipMany (oneOf " \t")
+ keyArg pos <|> do
+ char '{'
+ skipMany (oneOf " \t")
+ sp <- keyArg pos
+ char '}'
+ return sp
+
+keyArg :: SourcePos -> Parser Token
+keyArg pos = do
key <- liftM2 (:) (letter <|> char '_') (many (alphaNum <|> char '_'))
<?> "hsc directive"
skipMany (oneOf " \t")