+ struct DeleteEffects {
+ DeleteEffects();
+ ~DeleteEffects();
+
+ // The time range affected. These can be is_null() to be unbounded in one
+ // or both directions.
+ base::Time begin_time, end_time;
+
+ // The unique URL rows affected by this delete.
+ std::map<URLID, URLRow> affected_urls;
+
+ // The URLs modified, but not deleted, during this operation.
+ URLRows modified_urls;
+
+ // The URLs deleted during this operation.
+ URLRows deleted_urls;
+
+ // All favicon IDs that the deleted URLs had. Favicons will be shared
+ // between all URLs with the same favicon, so this is the set of IDs that we
+ // will need to check when the delete operations are complete.
+ std::set<favicon_base::FaviconID> affected_favicons;
+
+ // All favicon urls that were actually deleted from the thumbnail db.
+ std::set<GURL> deleted_favicons;
+ };