| 176 | | desugarDashE ((Opt "-M" mod):args) = desugarDashE ((Opt "-E" (";use " ++ mod ++ ";\n")):args) |
| | 176 | desugarDashE ((Opt "-M" mod):args) |
| | 177 | | (mod', (_:args)) <- break (== '=') mod |
| | 178 | = useWith $ mod' ++ " '" ++ escape args ++ "'.split(',')" |
| | 179 | | otherwise |
| | 180 | = useWith mod |
| | 181 | where |
| | 182 | useWith mod = desugarDashE ((Opt "-E" (";use " ++ mod ++ ";\n")):args) |
| | 183 | escape [] = [] |
| | 184 | escape ('\'':xs) = '\\':'\'':escape xs |
| | 185 | escape ('\\':xs) = '\\':'\\':escape xs |
| | 186 | escape (x:xs) = x:escape xs |
| | 187 | |