]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-dict: Explicitly specify used dict_vfuncs methods for drivers.
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Tue, 21 Jun 2016 09:04:24 +0000 (12:04 +0300)
committerTimo Sirainen <timo.sirainen@dovecot.fi>
Tue, 21 Jun 2016 09:06:48 +0000 (12:06 +0300)
This allows adding more methods without modifying all the existing drivers.

src/lib-dict/dict-cdb.c
src/lib-dict/dict-client.c
src/lib-dict/dict-db.c
src/lib-dict/dict-file.c
src/lib-dict/dict-memcached-ascii.c
src/lib-dict/dict-memcached.c
src/lib-dict/dict-redis.c
src/lib-dict/dict-sql.c

index 755dbde5622836278c3fa33ac013bdb8672786d7..25e1def4e03cfe9373ca344f3660be161aaf3c96 100644 (file)
@@ -122,20 +122,9 @@ static int cdb_dict_lookup(struct dict *_dict, pool_t pool,
 struct dict dict_driver_cdb = {
        .name = "cdb",
        {
-               cdb_dict_init,
-               cdb_dict_deinit,
-               NULL,
-               cdb_dict_lookup,
-               NULL,
-               NULL,
-               NULL,
-               NULL,
-               NULL,
-               NULL,
-               NULL,
-               NULL,
-               NULL,
-               NULL
+               .init = cdb_dict_init,
+               .deinit = cdb_dict_deinit,
+               .lookup = cdb_dict_lookup,
        }
 };
 #endif
index b33fa339dadcbd1b0818e14832a44a0e752648b3..5d37983f492d8add92d5cf019375b042e38bf895 100644 (file)
@@ -997,20 +997,20 @@ struct dict dict_driver_client = {
        .name = "proxy",
 
        {
-               client_dict_init,
-               client_dict_deinit,
-               client_dict_wait,
-               client_dict_lookup,
-               client_dict_iterate_init,
-               client_dict_iterate,
-               client_dict_iterate_deinit,
-               client_dict_transaction_init,
-               client_dict_transaction_commit,
-               client_dict_transaction_rollback,
-               client_dict_set,
-               client_dict_unset,
-               client_dict_atomic_inc,
-               client_dict_lookup_async,
-               client_dict_switch_ioloop
+               .init = client_dict_init,
+               .deinit = client_dict_deinit,
+               .wait = client_dict_wait,
+               .lookup = client_dict_lookup,
+               .iterate_init = client_dict_iterate_init,
+               .iterate = client_dict_iterate,
+               .iterate_deinit = client_dict_iterate_deinit,
+               .transaction_init = client_dict_transaction_init,
+               .transaction_commit = client_dict_transaction_commit,
+               .transaction_rollback = client_dict_transaction_rollback,
+               .set = client_dict_set,
+               .unset = client_dict_unset,
+               .atomic_inc = client_dict_atomic_inc,
+               .lookup_async = client_dict_lookup_async,
+               .switch_ioloop = client_dict_switch_ioloop
        }
 };
index 783b5d1193b015ddf9506b79512bd7a375f39a15..541665b2b3149da6cb2ebe6bc5ff333775889ad5 100644 (file)
@@ -465,20 +465,18 @@ db_dict_atomic_inc(struct dict_transaction_context *_ctx ATTR_UNUSED,
 struct dict dict_driver_db = {
        .name = "db",
        {
-               db_dict_init,
-               db_dict_deinit,
-               NULL,
-               db_dict_lookup,
-               db_dict_iterate_init,
-               db_dict_iterate,
-               db_dict_iterate_deinit,
-               db_dict_transaction_init,
-               db_dict_transaction_commit,
-               db_dict_transaction_rollback,
-               db_dict_set,
-               db_dict_unset,
-               db_dict_atomic_inc,
-               NULL
+               .init = db_dict_init,
+               .deinit = db_dict_deinit,
+               .lookup = db_dict_lookup,
+               .iterate_init = db_dict_iterate_init,
+               .iterate = db_dict_iterate,
+               .iterate_deinit = db_dict_iterate_deinit,
+               .transaction_init = db_dict_transaction_init,
+               .transaction_commit = db_dict_transaction_commit,
+               .transaction_rollback = db_dict_transaction_rollback,
+               .set = db_dict_set,
+               .unset = db_dict_unset,
+               .atomic_inc = db_dict_atomic_inc,
        }
 };
 #endif
index b35c2367f6d513a782720523a7323bfb0fd67f34..cd62e5f6e61d225538905cf4edd55eba438e51f2 100644 (file)
@@ -647,20 +647,17 @@ file_dict_transaction_commit(struct dict_transaction_context *_ctx,
 struct dict dict_driver_file = {
        .name = "file",
        {
-               file_dict_init,
-               file_dict_deinit,
-               NULL,
-               file_dict_lookup,
-               file_dict_iterate_init,
-               file_dict_iterate,
-               file_dict_iterate_deinit,
-               file_dict_transaction_init,
-               file_dict_transaction_commit,
-               dict_transaction_memory_rollback,
-               dict_transaction_memory_set,
-               dict_transaction_memory_unset,
-               dict_transaction_memory_atomic_inc,
-               NULL,
-               NULL
+               .init = file_dict_init,
+               .deinit = file_dict_deinit,
+               .lookup = file_dict_lookup,
+               .iterate_init = file_dict_iterate_init,
+               .iterate = file_dict_iterate,
+               .iterate_deinit = file_dict_iterate_deinit,
+               .transaction_init = file_dict_transaction_init,
+               .transaction_commit = file_dict_transaction_commit,
+               .transaction_rollback = dict_transaction_memory_rollback,
+               .set = dict_transaction_memory_set,
+               .unset = dict_transaction_memory_unset,
+               .atomic_inc = dict_transaction_memory_atomic_inc,
        }
 };
index 2e33a32882ef50217bf4dabf189af5ce503e0b09..310bee67bd380a813189095cfe256e2b4dfe7b09 100644 (file)
@@ -660,20 +660,14 @@ memcached_ascii_transaction_commit(struct dict_transaction_context *_ctx,
 struct dict dict_driver_memcached_ascii = {
        .name = "memcached_ascii",
        {
-               memcached_ascii_dict_init,
-               memcached_ascii_dict_deinit,
-               NULL,
-               memcached_ascii_dict_lookup,
-               NULL,
-               NULL,
-               NULL,
-               memcached_ascii_transaction_init,
-               memcached_ascii_transaction_commit,
-               dict_transaction_memory_rollback,
-               dict_transaction_memory_set,
-               dict_transaction_memory_unset,
-               dict_transaction_memory_atomic_inc,
-               NULL,
-               NULL
+               .init = memcached_ascii_dict_init,
+               .deinit = memcached_ascii_dict_deinit,
+               .lookup = memcached_ascii_dict_lookup,
+               .transaction_init = memcached_ascii_transaction_init,
+               .transaction_commit = memcached_ascii_transaction_commit,
+               .transaction_rollback = dict_transaction_memory_rollback,
+               .set = dict_transaction_memory_set,
+               .unset = dict_transaction_memory_unset,
+               .atomic_inc = dict_transaction_memory_atomic_inc,
        }
 };
index 1fbe301eedd6078007346d80260e31103a396940..7e4618792715238306f6ccaac7a2f5d15b23f29b 100644 (file)
@@ -365,20 +365,8 @@ memcached_dict_lookup(struct dict *_dict, pool_t pool, const char *key,
 struct dict dict_driver_memcached = {
        .name = "memcached",
        {
-               memcached_dict_init,
-               memcached_dict_deinit,
-               NULL,
-               memcached_dict_lookup,
-               NULL,
-               NULL,
-               NULL,
-               NULL,
-               NULL,
-               NULL,
-               NULL,
-               NULL,
-               NULL,
-               NULL,
-               NULL
+               .init = memcached_dict_init,
+               .deinit = memcached_dict_deinit,
+               .lookup = memcached_dict_lookup,
        }
 };
index 55ff2489434c798530992731ae3fbc110f3d5747..30329ae3853fef751f1c60650d794cd433734d07 100644 (file)
@@ -777,20 +777,14 @@ static void redis_atomic_inc(struct dict_transaction_context *_ctx,
 struct dict dict_driver_redis = {
        .name = "redis",
        {
-               redis_dict_init,
-               redis_dict_deinit,
-               NULL,
-               redis_dict_lookup,
-               NULL,
-               NULL,
-               NULL,
-               redis_transaction_init,
-               redis_transaction_commit,
-               redis_transaction_rollback,
-               redis_set,
-               redis_unset,
-               redis_atomic_inc,
-               NULL,
-               NULL
+               .init = redis_dict_init,
+               .deinit = redis_dict_deinit,
+               .lookup = redis_dict_lookup,
+               .transaction_init = redis_transaction_init,
+               .transaction_commit = redis_transaction_commit,
+               .transaction_rollback = redis_transaction_rollback,
+               .set = redis_set,
+               .unset = redis_unset,
+               .atomic_inc = redis_atomic_inc,
        }
 };
index 343baad93dca3674ebb9f5801325ad3c997d168f..709fb210f66dedf4a50fca518fb1a454e41005d1 100644 (file)
@@ -1224,21 +1224,20 @@ static struct dict sql_dict = {
        .name = "sql",
 
        {
-               sql_dict_init,
-               sql_dict_deinit,
-               sql_dict_wait,
-               sql_dict_lookup,
-               sql_dict_iterate_init,
-               sql_dict_iterate,
-               sql_dict_iterate_deinit,
-               sql_dict_transaction_init,
-               sql_dict_transaction_commit,
-               sql_dict_transaction_rollback,
-               sql_dict_set,
-               sql_dict_unset,
-               sql_dict_atomic_inc,
-               sql_dict_lookup_async,
-               NULL
+               .init = sql_dict_init,
+               .deinit = sql_dict_deinit,
+               .wait = sql_dict_wait,
+               .lookup = sql_dict_lookup,
+               .iterate_init = sql_dict_iterate_init,
+               .iterate = sql_dict_iterate,
+               .iterate_deinit = sql_dict_iterate_deinit,
+               .transaction_init = sql_dict_transaction_init,
+               .transaction_commit = sql_dict_transaction_commit,
+               .transaction_rollback = sql_dict_transaction_rollback,
+               .set = sql_dict_set,
+               .unset = sql_dict_unset,
+               .atomic_inc = sql_dict_atomic_inc,
+               .lookup_async = sql_dict_lookup_async,
        }
 };