[Haskell-beginners] How to use Text.Printf w/ custom types

Baa aquagnu at gmail.com
Fri Nov 24 14:07:19 UTC 2017


I talked about PrintfType and its method `hspr`.

With PrintfArgs the same problem:

  instance PrintfArg JobEvent where
    toUPrintf _ = UString "aaa"

      ^^^ toUPrintf is not visible ERROR here...

Header of this file looks like:

  module Text.Printf(
     printf, hPrintf,
     PrintfType, HPrintfType, PrintfArg, IsChar
  ) where

so methods are not exported? And I don't see any Internal subpackage...
OK, no problem, I switched already to very cool `formatting` library :)

Thanks a lot!


> It appears PrintfArg and its methods are fully exported.
> 
> On Fri, Nov 24, 2017 at 8:19 AM, Baa <aquagnu at gmail.com> wrote:
> 
> > But how to do it if "methods" are not exporting?
> >  
> > > According to
> > > https://hackage.haskell.org/package/base-4.10.0.0/docs/  
> > Text-Printf.html#g:2,  
> > > you only need to implement `PrintfArg`. There is also an example
> > > for `()`.
> > >
> > > Baa <aquagnu at gmail.com> schrieb am Fr., 24. Nov. 2017 um 13:33
> > > Uhr: 
> > > > Hello All!
> > > >
> > > > As I understand to use Text.Printf.printf with custom types or
> > > > to return result as Text instead of String I must implement some
> > > > class instances: PrintfType, PrintfArg. But how to do this if
> > > > they are exported from module as type-names only - without its
> > > > methods (i.e. not "Printf (..)", but "Printf") ?
> > > >
> > > > I tried to import Text.Printf.Internal but seems that no such
> > > > submodule...
> > > >
> > > > Any ideas?
> > > >
> > > > ===
> > > > Best regards, Paul
> > > > _______________________________________________
> > > > Beginners mailing list
> > > > Beginners at haskell.org
> > > > http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners
> > > >  
> >
> > _______________________________________________
> > Beginners mailing list
> > Beginners at haskell.org
> > http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners
> >  



More information about the Beginners mailing list