madlib/madlib — pull request #139 by fschopp (2012-05-04 19:42:37+00:00)
Title: New Types in C++ AL: Sparse Vectors and Function Pointers

*Please confirm with me before actually pulling these changes. I have not done tests, yet, but would like to open the discussion before being offline for the next two days.*

Significant other changes:

- All files in the PostgreSQL connector now properly declare namespaces (as opposed to assuming that they will be #include'd in the right namespaces). The previous ugly workaround for Doxygen is no longer necessary. (Accounts for many modified files)

- The AbstractionLayer class was used like a namespace. This has been corrected in that the AbstractionLayer class has been completely removed. Any occurrences where inheritence was used to import names have been accordingly modified (and corrected).

- The caching of database metadata has been encapusalted in the new SystemInformation, FunctionInformation, and TypeInformation classes.

- Many backend functions have been wrapped by a madlib_* function that puts a PG_TRY()/PG_CATCH() block around the function. This is in the new backend.hpp

- Simplified the files containing UDF declarations