File: patch-norback

package info (click to toggle)
ghc-cvs 20040725-2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 68,484 kB
  • ctags: 19,658
  • sloc: haskell: 251,945; ansic: 109,709; asm: 24,961; sh: 12,825; perl: 5,786; makefile: 5,334; xml: 3,884; python: 682; yacc: 650; lisp: 477; cpp: 337; ml: 76; fortran: 24; csh: 18
file content (33 lines) | stat: -rw-r--r-- 1,254 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
--- ../HaXml-1.02/tools/DtdToTypeDefPP.hs	Wed May 30 14:21:31 2001
+++ tools/DtdToTypeDefPP.hs	Fri Jul 13 15:22:52 2001
@@ -298,7 +298,8 @@
              mkFrAux aux frattr cs $$
              text "fromElem rest = (Nothing, rest)"
            $$
-             vcat (map (mkToMult n topat toattr) cs)
+             if aux then vcat (map (mkToAux mixattrs) cs)
+             else vcat (map (mkToMult n topat toattr) cs)
            )
     $$
     mkInstanceAttrs Extended n fs
@@ -491,13 +492,13 @@
                   (Defined m) -> text "Just" <+> v
         in parens (hcat (intersperse comma (zipWith sp sts vs++[rest])))
 
---mkToAux :: Bool -> (Name,[StructType]) -> Doc
---mkToAux mixattrs (n,sts) =
---    let vs = nameSupply sts
---        attrs = if mixattrs then text "as" else empty
---    in
---    text "toElem" <+> parens (mkCpat n attrs vs) <+> text "=" <+>
---    mkToElem sts vs
+mkToAux :: Bool -> (Name,[StructType]) -> Doc
+mkToAux mixattrs (n,sts) =
+    let vs = nameSupply sts
+        attrs = if mixattrs then text "as" else empty
+    in
+    text "toElem" <+> parens (mkCpat n attrs vs) <+> text "=" <+>
+    mkToElem sts vs
 
 mkToMult :: Name -> Doc -> Doc -> (Name,[StructType]) -> Doc
 mkToMult tag attrpat attrexp (n,sts) =