module Sound.MED.Basic.Pretty where pretty :: String -> String pretty :: String -> String pretty = Int -> String -> String pretty' Int 0 pretty' :: Int -> String -> String pretty' :: Int -> String -> String pretty' Int _ [] = String "\n" pretty' Int level (Char c:String cs) = case Char c of Char ' ' -> Int -> String -> String pretty' Int level String cs Char '=' -> String " = " String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String -> String pretty' Int level String cs Char '{' -> String "{\n" String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String indent (Int levelInt -> Int -> Int forall a. Num a => a -> a -> a +Int 1) String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String -> String pretty' (Int levelInt -> Int -> Int forall a. Num a => a -> a -> a +Int 1) String cs Char '}' -> String "\n" String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String indent (Int levelInt -> Int -> Int forall a. Num a => a -> a -> a -Int 1) String -> String -> String forall a. [a] -> [a] -> [a] ++ String "}" String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String -> String pretty' (Int levelInt -> Int -> Int forall a. Num a => a -> a -> a -Int 1) String cs Char '[' -> String "[\n" String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String indent (Int levelInt -> Int -> Int forall a. Num a => a -> a -> a +Int 1) String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String -> String pretty' (Int levelInt -> Int -> Int forall a. Num a => a -> a -> a +Int 1) String cs Char ']' -> String "\n" String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String indent (Int levelInt -> Int -> Int forall a. Num a => a -> a -> a -Int 1) String -> String -> String forall a. [a] -> [a] -> [a] ++ String "]" String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String -> String pretty' (Int levelInt -> Int -> Int forall a. Num a => a -> a -> a -Int 1) String cs Char '(' -> String "(\n" String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String indent (Int levelInt -> Int -> Int forall a. Num a => a -> a -> a +Int 1) String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String -> String pretty' (Int levelInt -> Int -> Int forall a. Num a => a -> a -> a +Int 1) String cs Char ')' -> String "\n" String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String indent (Int levelInt -> Int -> Int forall a. Num a => a -> a -> a -Int 1) String -> String -> String forall a. [a] -> [a] -> [a] ++ String ")" String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String -> String pretty' (Int levelInt -> Int -> Int forall a. Num a => a -> a -> a -Int 1) String cs Char ',' -> String ",\n" String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String indent Int level String -> String -> String forall a. [a] -> [a] -> [a] ++ Int -> String -> String pretty' Int level String cs Char _ -> Char c Char -> String -> String forall a. a -> [a] -> [a] : Int -> String -> String pretty' Int level String cs indent :: Int -> String indent :: Int -> String indent Int level = Int -> Char -> String forall a. Int -> a -> [a] replicate (Int levelInt -> Int -> Int forall a. Num a => a -> a -> a *Int 4) Char ' '