-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | An IDL Compiler for MessagePack -- -- An IDL Compiler for MessagePack http://msgpack.org/ @package msgpack-idl @version 0.2.0 module Language.MessagePack.IDL.Internal withDirectory :: FilePath -> IO a -> IO a module Language.MessagePack.IDL.Syntax type Spec = [Decl] data Decl MPMessage :: Text -> [Text] -> [Field] -> Decl msgName :: Decl -> Text msgParam :: Decl -> [Text] msgFields :: Decl -> [Field] MPException :: Text -> [Text] -> Maybe Text -> [Field] -> Decl excName :: Decl -> Text excParam :: Decl -> [Text] excSuper :: Decl -> Maybe Text excFields :: Decl -> [Field] MPType :: Text -> Type -> Decl tyName :: Decl -> Text tyType :: Decl -> Type MPEnum :: Text -> [(Int, Text)] -> Decl enumName :: Decl -> Text enumMem :: Decl -> [(Int, Text)] MPService :: Text -> Maybe Int -> [Method] -> Decl serviceName :: Decl -> Text serviceVersion :: Decl -> Maybe Int serviceMethods :: Decl -> [Method] data Field Field :: Int -> Type -> Text -> Maybe Literal -> Field fldId :: Field -> Int fldType :: Field -> Type fldName :: Field -> Text fldDefault :: Field -> Maybe Literal data Method Function :: Bool -> Text -> Type -> [Field] -> Method methodInherit :: Method -> Bool methodName :: Method -> Text methodRetType :: Method -> Type methodArgs :: Method -> [Field] InheritName :: Text -> Method InheritAll :: Method data Type TInt :: Bool -> Int -> Type TFloat :: Bool -> Type TBool :: Type TRaw :: Type TString :: Type TNullable :: Type -> Type TList :: Type -> Type TMap :: Type -> Type -> Type TTuple :: [Type] -> Type TUserDef :: Text -> [Type] -> Type TObject :: Type TVoid :: Type data Literal LInt :: Int -> Literal LFloat :: Double -> Literal LBool :: Bool -> Literal LNull :: Literal LString :: Text -> Literal instance Typeable Type instance Typeable Literal instance Typeable Field instance Typeable Method instance Typeable Decl instance Eq Type instance Show Type instance Data Type instance Eq Literal instance Show Literal instance Data Literal instance Eq Field instance Show Field instance Data Field instance Eq Method instance Show Method instance Data Method instance Eq Decl instance Show Decl instance Data Decl module Language.MessagePack.IDL.Parser idl :: ListLike str_ag9a Char => Parser (MemoTable str_ag9a) str_ag9a s_ag9b Spec instance MemoTable (MemoTable str0) module Language.MessagePack.IDL.CodeGen.Haskell data Config Config :: FilePath -> Config configFilePath :: Config -> FilePath generate :: Config -> Spec -> IO () module Language.MessagePack.IDL.Check check :: Spec -> Bool module Language.MessagePack.IDL.CodeGen.Cpp data Config Config :: FilePath -> String -> Bool -> Config configFilePath :: Config -> FilePath configNameSpace :: Config -> String configPFICommon :: Config -> Bool generate :: Config -> Spec -> IO () instance Show Config instance Eq Config module Language.MessagePack.IDL.CodeGen.Java data Config Config :: FilePath -> String -> Config configFilePath :: Config -> FilePath configPackage :: Config -> String generate :: Config -> Spec -> IO () instance Show Config instance Eq Config module Language.MessagePack.IDL.CodeGen.Perl data Config Config :: FilePath -> String -> Config configFilePath :: Config -> FilePath configNameSpace :: Config -> String generate :: Config -> Spec -> IO () instance Show Config instance Eq Config module Language.MessagePack.IDL.CodeGen.Php data Config Config :: FilePath -> Config configFilePath :: Config -> FilePath generate :: Config -> Spec -> IO () instance Show Config instance Eq Config module Language.MessagePack.IDL.CodeGen.Python data Config Config :: FilePath -> Config configFilePath :: Config -> FilePath generate :: Config -> Spec -> IO () instance Show Config instance Eq Config module Language.MessagePack.IDL.CodeGen.Ruby data Config Config :: FilePath -> String -> Config configFilePath :: Config -> FilePath configModule :: Config -> String generate :: Config -> Spec -> IO () instance Show Config instance Eq Config instance Eq AccessorType module Language.MessagePack.IDL