string-map: New function string_map_equals().
[pspp] / src / libpspp / string-map.h
index f8ffabcffc1250bfdbdc428c511601937bdc6353..7f2da1738c2d21ee59d1b332c5ae3e0526dea3c2 100644 (file)
@@ -1,5 +1,5 @@
 /* PSPP - a program for statistical analysis.
-   Copyright (C) 2009 Free Software Foundation, Inc.
+   Copyright (C) 2009, 2011 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -23,7 +23,7 @@
    key-value pairs. */
 
 #include <stdbool.h>
-#include <libpspp/hmap.h>
+#include "libpspp/hmap.h"
 
 struct string_set;
 
@@ -89,8 +89,12 @@ static inline bool string_map_is_empty (const struct string_map *);
 
 bool string_map_contains (const struct string_map *, const char *);
 const char *string_map_find (const struct string_map *, const char *);
+const char *string_map_find__ (const struct string_map *, const char *,
+                               size_t length);
 struct string_map_node *string_map_find_node (const struct string_map *,
                                               const char *);
+struct string_map_node *string_map_find_node__ (const struct string_map *,
+                                                const char *, size_t length);
 char *string_map_find_and_delete (struct string_map *, const char *key);
 
 struct string_map_node *string_map_insert (struct string_map *,
@@ -112,6 +116,8 @@ void string_map_replace_map (struct string_map *, const struct string_map *);
 void string_map_get_keys (const struct string_map *, struct string_set *);
 void string_map_get_values (const struct string_map *, struct string_set *);
 
+bool string_map_equals (const struct string_map *, const struct string_map *);
+
 static inline struct string_map_node *string_map_first (
   const struct string_map *);
 static inline struct string_map_node *string_map_next (