Another requirement not yet mentioned for C++ users, are exceptions. While we can easily just convert IStatus to Exception, if Exception is a FB class, not even derived from std::exception, it may be completely inappropriate for users applications.
You know, each C++ project has its own requirements for exceptions. Firebird is one of them. In my demo (probably not need to send it, as nobody is doing concrete arguments against it, but still talking about others things), this can be personalized via police classes. AFAIR, this concept was created or consolidated by Andrei Alexandrescu for the Loki library, though that was a pure template library, not a library of interfaces. It consist more or less like this: typedef FbApi<MyPolice> MyFbApi; MyFbApi::IInterface* interface = ...; This happen to work very well, even in the first implementation in the prototype. Adriano ------------------------------------------------------------------------------ Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel