]> git.notmuchmail.org Git - notmuch/blobdiff - lib/notmuch-private.h
lib: Consolidate checks for read-only database.
[notmuch] / lib / notmuch-private.h
index 9f470c9f9e389d9ff19c6ceced0ad08bcddd724e..4eb82619afa91235daa1c3a00ffad6efe27a7294 100644 (file)
@@ -151,6 +151,9 @@ typedef enum _notmuch_private_status {
 const char *
 _find_prefix (const char *name);
 
+notmuch_status_t
+_notmuch_database_ensure_writable (notmuch_database_t *notmuch);
+
 const char *
 _notmuch_database_relative_path (notmuch_database_t *notmuch,
                                 const char *path);
@@ -161,11 +164,41 @@ _notmuch_database_split_path (void *ctx,
                              const char **directory,
                              const char **basename);
 
+const char *
+_notmuch_database_get_directory_db_path (const char *path);
+
+notmuch_private_status_t
+_notmuch_database_find_unique_doc_id (notmuch_database_t *notmuch,
+                                     const char *prefix_name,
+                                     const char *value,
+                                     unsigned int *doc_id);
+
 notmuch_status_t
 _notmuch_database_find_directory_id (notmuch_database_t *database,
                                     const char *path,
                                     unsigned int *directory_id);
 
+const char *
+_notmuch_database_get_directory_path (void *ctx,
+                                     notmuch_database_t *notmuch,
+                                     unsigned int doc_id);
+
+notmuch_status_t
+_notmuch_database_filename_to_direntry (void *ctx,
+                                       notmuch_database_t *notmuch,
+                                       const char *filename,
+                                       char **direntry);
+
+/* directory.cc */
+
+notmuch_directory_t *
+_notmuch_directory_create (notmuch_database_t *notmuch,
+                          const char *path,
+                          notmuch_status_t *status_ret);
+
+unsigned int
+_notmuch_directory_get_document_id (notmuch_directory_t *directory);
+
 /* thread.cc */
 
 notmuch_thread_t *
@@ -205,8 +238,8 @@ _notmuch_message_gen_terms (notmuch_message_t *message,
                            const char *prefix_name,
                            const char *text);
 
-void
-_notmuch_message_set_filename (notmuch_message_t *message,
+notmuch_status_t
+_notmuch_message_add_filename (notmuch_message_t *message,
                               const char *filename);
 
 void