On Mon, Jun 13, 2011 at 4:58 PM, Dmitry Olshansky <[email protected]> wrote: > On 13.06.2011 23:56, Jose Armando Garcia wrote: >> >> On Mon, Jun 13, 2011 at 2:50 PM, Robert Jacques<[email protected]> wrote: >>> >>> On Sat, 11 Jun 2011 20:49:18 -0400, Jose Armando >>> Garcia<[email protected]> >>> wrote: >>>> >>>> Hello everyone, >>>> >>>> What do I need to do to add std.log to the review queue? The >>>> implementation is feature complete and it should work in both Windows >>>> and Linux. >>>> >>>> The documentation: http://jsancio.github.com/phobos/phobos/std_log.html >>>> The code: https://github.com/jsancio/phobos/blob/master/std/log.d >>>> >>>> druntime changes: >>>> >>>> >>>> https://github.com/jsancio/druntime/commit/06ac77dca29b350b7079929588755e6b15ca52a5 >>>> >>>> If you want to give the library a try, probably the best thing to do >>>> is clone my forks. I keep them fairly up to date with the official >>>> branches. For phobos use the master branch and the branch for druntime >>>> is log. >>>> >>>> Enjoy and thanks, >>>> -Jose >>> >>> I've taken a quick look at the API. I notice you've put all the severity >>> levels into the public name space. I.e. fatal, error, etc. And the >>> primary >>> use of the severity levels is as template arguments to log, i.e. >>> log!warning(). This feels like pointless namespace pollution. Is there a >>> reason static struct members, i.e. log.warning(), log.error(), etc., or >>> free >>> functions, i.e. logWarning() or log_warning(), are inferior solutions? >>> >> Functions are not enough. I need them to be templates because of >> compile time disabling of logging. Conditionally compiling based on >> the version flag needs to be done when the client code is compiled not >> when the library/phobos is compiled. I think only templates give me >> this functionality but I could be wrong. >> >> I can make them free standing template but to use them the client must: >> >> logInfo!()("Hello world"); >> >> Argh! Maybe we can use strings: >> >> log!"info"("Hello word"); >> >> or a char: >> >> log!'i'("Hello"); log!'I'("World"); >> >> Running out of ideas. Anything better? >> > From the top of my head - would opDispatch be of any use? It is template. > > -- > Dmitry Olshansky >
Not sure. Need to investigate this. _______________________________________________ phobos mailing list [email protected] http://lists.puremagic.com/mailman/listinfo/phobos
