summaryrefslogtreecommitdiff
path: root/odb/context.hxx
AgeCommit message (Collapse)AuthorFilesLines
2014-01-17Handle query column exporting for composite value typesBoris Kolpackov1-1/+1
A composite value is represented in query_columns as a nested struct. Even though the query_columns template instantiation is exported, VC++ for some reason doesn't appear to also export the nested structs. To work around this, nested structs have to have the export macro in the declaration. But that's not it: we also have to declare the nested structs extern, just like the outer template instantiation itself.
2013-09-16Implement summary soft-deletion for composite value typesBoris Kolpackov1-1/+11
2013-09-12Make sure that soft-add/delete version is current versionBoris Kolpackov1-1/+46
2013-09-06Rename flags for clarityBoris Kolpackov1-3/+2
2013-09-05Versioned section supportBoris Kolpackov1-2/+16
2013-09-04Container versioning supportBoris Kolpackov1-0/+4
2013-09-02Support for versioning simple value in objectBoris Kolpackov1-2/+37
2013-08-30Statement processing/optimization base workBoris Kolpackov1-0/+2
2013-08-28Support for added and deleted data member pragmasBoris Kolpackov1-7/+47
2013-08-16Implement soft delete for persistent classesBoris Kolpackov1-0/+14
2013-08-14Add support for object sectionsBoris Kolpackov1-5/+300
Sections are an optimization mechanism that allows the partitioning of data members of a persistent class into groups that can be separately loaded and/or updated.
2013-06-13Add support for native views that call stored proceduresBoris Kolpackov1-1/+2
2013-04-10Generate add/drop foreign key migration statementsBoris Kolpackov1-1/+8
Also add the --fkeys-deferrable-mode option. General schemas generation rework.
2013-04-10Add model version pragmaBoris Kolpackov1-0/+23
2013-02-09Update copyright yearBoris Kolpackov1-1/+1
2013-02-05Add support for change-tracking containersBoris Kolpackov1-0/+7
ODB now supports "smart" ordered containers. Such containers get extra functions for updating and deleting individual elements. Based on this functionality implement two change-tracking containers: odb::vector (equivalent to std::vector) and QOdbList (equivalent to QList). New tests: common/container/change-tracking and qt/common/container/change- tracking.
2013-01-24Add support for mapping char[N] to CHAR/VARCHAR database typesBoris Kolpackov1-4/+8
Also improve query support for arrays (decaying).
2013-01-23Add commentBoris Kolpackov1-1/+2
2012-12-12Add support for SQL name transformationsBoris Kolpackov1-17/+83
2012-12-03Make --export-symbol and --extern-symbole values database-prefixableBoris Kolpackov1-1/+3
2012-11-28Add support for DLL exporting of generated codeBoris Kolpackov1-0/+11
New options: --export-symbol, --extern-symbol.
2012-11-21Add dynamic multi-database query supportBoris Kolpackov1-0/+3
2012-11-21Move some of the preprocessing from relational to commonBoris Kolpackov1-2/+13
2012-09-17Convert integer and floating default values immediately2.1.0Boris Kolpackov1-6/+13
It appears that GCC 4.8 reuses token tree nodes that are returned during pragma parsing. So saving such nodes for later no longer works.
2012-09-12Implement --output-name, --generate-schema-only, and --at-once optionsBoris Kolpackov1-8/+0
2012-09-04NULL handling improvementsBoris Kolpackov1-9/+17
Add support for specifying NULL-ness for types with built-in mapping. Handle Oracle [N]VARCHAR2 and SQLite FLOAT oddities using this mechanism instead of overriding it at the schema generation level. Also use the is_null argument that is passed to value_traits::init_image() to indicate whether the value can be NULL.
2012-08-31Add support for virtual data membersBoris Kolpackov1-1/+1
New test: common/virtual.
2012-08-16Add support for automatically discovering accessor/modifier functionsBoris Kolpackov1-5/+21
New options: --{accessor,modifier}-regex, --{accessor,modifier}-regex-trace.
2012-08-15Add support for member accessors/modifiersBoris Kolpackov1-2/+64
New pragmas: get, set, access. New test: common/access.
2012-08-01Add support for empty column names in composite value typesBoris Kolpackov1-0/+5
2012-07-10Add support for custom database type mappingBoris Kolpackov1-0/+1
New pragma qualifier, map, and specifiers: as, to, from. New tests: <database>/custom.
2012-04-27Add support for NULL pointers to objects with composite object idsBoris Kolpackov1-3/+6
2012-04-26Make session optionalBoris Kolpackov1-0/+6
2012-04-23Polymorphic inheritance supportBoris Kolpackov1-3/+59
2012-03-05Add support for generating schema creation code into separate C++ fileBoris Kolpackov1-0/+1
2012-02-27Add support for specifying table prefix on namespaceBoris Kolpackov1-3/+9
2012-02-22Add support for composite object idsBoris Kolpackov1-0/+17
New pragma id_type (member). New test: common/composite-id. The composite example has also been updated.
2012-01-29Update copyright yearBoris Kolpackov1-1/+1
2012-01-29Remove author field from file headerBoris Kolpackov1-1/+0
Too much effort to maintain.
2012-01-27Make container schema override object schemaBoris Kolpackov1-1/+10
2012-01-26Implement support for database schemaBoris Kolpackov1-10/+18
New pragma qualifier: namespace. New pragma specifier: schema. The table specifier was extended to accept a schema prefix. New option: --default- schema. The common/schema test was extended to cover the new functionality.
2012-01-20Add auto_() test for auto-idBoris Kolpackov1-0/+6
2012-01-08Add support for defining composite value type as class template instantiationsBoris Kolpackov1-7/+18
2011-11-09Make sure we can use same type as both container and simple valueBoris Kolpackov1-18/+19
2011-11-01Implement support for optimistic concurrencyBoris Kolpackov1-1/+29
New pragmas: optimistic, version. New test: optimistic. New database function: reload().
2011-10-24Generate database schema from database model instead of C++ modelBoris Kolpackov1-1/+5
We now first create the so-called database model from C++ model and then use that to generate the database schema. The new approach also adds more general support for primary/foreign keys, including multi- column keys. Finally, for MySQL we now generate out-of-line foreign key definitions. Because MySQL does not support deferred constraints checking, deferred foreign keys are written commented out, for documentation.
2011-10-21Add support for const data membersBoris Kolpackov1-8/+51
Const data members are automatically treated as readonly. New test: const-member.
2011-10-21Add support for readonly membersBoris Kolpackov1-7/+34
New pragma: readonly. New test: readonly.
2011-10-21Split 'in' binding into insert/update pair; rename 'out' to selectBoris Kolpackov1-14/+33
Also add the initial infrastructure for the readonly members support. Right now the split insert/update bindings allows us to avoid sending object id in UPDATE statements. It will also allows us to support readonly members.
2011-09-27Add support for associating tables with viewsBoris Kolpackov1-4/+12