]> mj.ucw.cz Git - leo.git/blobdiff - dict.c
Parametrized drawing of map scale
[leo.git] / dict.c
diff --git a/dict.c b/dict.c
index a3679e713c1425f1a890cc0a41664744e11a2086..4542322a2ac72d47ec3cf6cf455a644a27d0fe62 100644 (file)
--- a/dict.c
+++ b/dict.c
@@ -1,7 +1,7 @@
 /*
  *     Hic Est Leo -- Universal Dictionaries
  *
- *     (c) 2014 Martin Mares <mj@ucw.cz>
+ *     (c) 2014--2015 Martin Mares <mj@ucw.cz>
  */
 
 #include <ucw/lib.h>
@@ -18,6 +18,7 @@ struct kv_map {
 #define HASH_NODE struct kv_map
 #define HASH_PREFIX(x) kv_map_##x
 #define HASH_KEY_STRING name
+#define HASH_WANT_FIND
 #define HASH_WANT_LOOKUP
 #define HASH_AUTO_POOL 4096
 #define HASH_ZERO_FILL
@@ -61,3 +62,9 @@ u32 dict_encode(struct dict *d, const char *key)
   *GARY_PUSH(d->names) = k->name;
   return k->id;
 }
+
+u32 dict_encode_if_exists(struct dict *d, const char *key)
+{
+  struct kv_map *k = kv_map_find(d->hash, (char *) key);
+  return k ? k->id : 0;
+}