From 4fd6bca4e75870958ea61b94e0a1e60e78cd91bc Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Sun, 8 Jan 2012 17:27:40 +0200 Subject: Add support for defining composite value type as class template instantiations --- odb/pragma.hxx | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'odb/pragma.hxx') diff --git a/odb/pragma.hxx b/odb/pragma.hxx index 0b09b43..57531ba 100644 --- a/odb/pragma.hxx +++ b/odb/pragma.hxx @@ -101,15 +101,25 @@ struct pragma_set: std::set // namespace case is the global_namespace node. // typedef std::map loc_pragmas; +extern loc_pragmas loc_pragmas_; // Pragmas associated with this declaration. // typedef std::map decl_pragmas; - -extern loc_pragmas loc_pragmas_; extern decl_pragmas decl_pragmas_; +// List of pragma names (in context name form) that disqualify a value +// type from being treated as composite (i.e., simple value pragmas). +// +typedef std::set pragma_name_set; +extern pragma_name_set simple_value_pragmas_; + extern "C" void register_odb_pragmas (void*, void*); +struct pragmas_failed {}; + +void +post_process_pragmas (); + #endif // ODB_PRAGMA_HXX -- cgit v1.1