module Derive.Call.Module where
import qualified Data.String as String
import qualified Data.Text as Text
import Global
newtype Module = Module Text.Text
deriving (Module -> Module -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Module -> Module -> Bool
$c/= :: Module -> Module -> Bool
== :: Module -> Module -> Bool
$c== :: Module -> Module -> Bool
Eq, Eq Module
Module -> Module -> Bool
Module -> Module -> Ordering
Module -> Module -> Module
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: Module -> Module -> Module
$cmin :: Module -> Module -> Module
max :: Module -> Module -> Module
$cmax :: Module -> Module -> Module
>= :: Module -> Module -> Bool
$c>= :: Module -> Module -> Bool
> :: Module -> Module -> Bool
$c> :: Module -> Module -> Bool
<= :: Module -> Module -> Bool
$c<= :: Module -> Module -> Bool
< :: Module -> Module -> Bool
$c< :: Module -> Module -> Bool
compare :: Module -> Module -> Ordering
$ccompare :: Module -> Module -> Ordering
Ord, Int -> Module -> ShowS
[Module] -> ShowS
Module -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Module] -> ShowS
$cshowList :: [Module] -> ShowS
show :: Module -> String
$cshow :: Module -> String
showsPrec :: Int -> Module -> ShowS
$cshowsPrec :: Int -> Module -> ShowS
Show, String -> Module
forall a. (String -> a) -> IsString a
fromString :: String -> Module
$cfromString :: String -> Module
String.IsString)
instance Pretty Module where pretty :: Module -> Text
pretty (Module Text
m) = Text
m
instance Semigroup Module where
Module Text
m1 <> :: Module -> Module -> Module
<> Module Text
m2
| Text -> Bool
Text.null Text
m1 = Text -> Module
Module Text
m2
| Text -> Bool
Text.null Text
m2 = Text -> Module
Module Text
m1
| Bool
otherwise = Text -> Module
Module forall a b. (a -> b) -> a -> b
$ Text
m1 forall a. Semigroup a => a -> a -> a
<> Text
"." forall a. Semigroup a => a -> a -> a
<> Text
m2
instance Monoid Module where
mempty :: Module
mempty = Module
""
mappend :: Module -> Module -> Module
mappend = forall a. Semigroup a => a -> a -> a
(<>)
prelude :: Module
prelude :: Module
prelude = Module
"prelude"
internal :: Module
internal :: Module
internal = Module
"internal"
local :: Module
local :: Module
local = Module
"local"
scale :: Module
scale :: Module
scale = Module
"scale"
instrument :: Module
instrument :: Module
instrument = Module
"inst"
ly :: Module
ly :: Module
ly = Module
"ly"
europe :: Module
europe :: Module
europe = Module
"europe"
bali :: Module
bali :: Module
bali = Module
"bali"
india :: Module
india :: Module
india = Module
"india"