Warren Young wrote:
> WARNING: this is a niggly detail post.
No problem. I'm a niggly detail person myself.
>
>> inline ~DefaultInsertPolicy() {
>
> I'm not wild about things like 'inline' and 'register' in code that
> doesn't have critical performance requirements. I trust the
> compiler's optimizer. As has been stated many, many times, MySQL++ is
> never the bottleneck.
No problem. Old habit. I guess this means the inline assembly is
probably not called for...
>
> Also, inline couples a library to the executable, which can prevent
> you from upgrading the library without recompiling the executable.
> The same can be said of templates, but we use templates in MySQL++
> only where they are necessary. inline isn't necessary.
>
>> inline void startQuery() {
>
> MySQL++ uses all-lowercase with underscores for member functions. I'm
> not wild about it, but we can't go changing it now.
Sure you can. I don't think it will break too many things. ;-)
Seriously, I'll change everything to conform. In my own code, I'm very
niggly about these sorts of things, including things like: all function
names are verbs (or verb-object)), and very precise formatting. I'm
more than happy to conform to anything you want.
>
>> template <class SSQLS>
>> bool canAdd(const SSQLS & object) const {
>
> I wouldn't use SSQLS as a template parameter name. insertfrom()
> should work with vector<Row>, too. RowT, maybe?
Good point. I changed it.
>
>> Transaction transaction(*conn_);
>
> Thank you. I feared I was going to see some raw SQL here for this. :)
>
C'mon, man, give me SOME credit... ;-)