Commit Graph

117 Commits

Author SHA1 Message Date
Matthias Beyer 80c460dac9 Transform BookmarkCollection into two traits
One trait is implemented on the Store, it retrieves BookmarkCollection
objects.
The other is implemented on `libimagstore::store::Entry` which then
represents a BookmarkCollection.
2018-01-08 15:16:14 +01:00
Matthias Beyer c0f4a20367
Merge pull request #1200 from matthiasbeyer/refactor-matching-into-command-chaining
Refactor matching into command chaining
2018-01-05 15:19:32 +01:00
Matthias Beyer 2c0f35e1a4
Merge pull request #1195 from matthiasbeyer/libimagdiary/support-seconds
Add second-support in libimagdiary
2018-01-05 13:54:12 +01:00
Matthias Beyer dd66936e48 Refactoring: Use function chaining rather than matching 2018-01-05 11:37:09 +01:00
Matthias Beyer a386d50df3 Refactoring: Use function chaining rather than matching 2018-01-05 11:37:09 +01:00
Matthias Beyer e7d5e9ebc2 Refactoring: Use function chaining rather than matching 2018-01-05 11:37:09 +01:00
Matthias Beyer 4bb0d0f073 Refactor: Use function chaining instead of matching 2018-01-05 11:37:09 +01:00
Matthias Beyer dbd9a2faaf Replace matching with function chaining 2018-01-05 11:37:09 +01:00
Matthias Beyer c1ff2b14f0 Replace matching with function chaining 2018-01-05 11:37:09 +01:00
Matthias Beyer 57cf5003bd Move common functionality to utility module 2018-01-05 11:37:09 +01:00
Matthias Beyer 0640bdeb73 Add second-support in libimagdiary 2018-01-04 19:39:07 +01:00
Matthias Beyer af819f0fca Remove unneeded "mut" 2018-01-04 19:34:21 +01:00
Matthias Beyer 198e304be9 Initial import of libimaglog implementation 2017-12-25 21:55:04 +01:00
Matthias Beyer 92d4a0237e Initial import: libimaglog 2017-12-25 21:46:04 +01:00
Matthias Beyer 3c8dd19d11 Update version strings: 0.5.0 -> 0.6.0 2017-12-25 19:17:07 +01:00
Matthias Beyer 0ed636bb06 Refactor libimagrt+libimagstore to pass whole configuration object
Before we extracted the store configuration from the configuration
toml::Value object and passed it to the store.

This is unecessary overhead.

Now we pass the whole configuration object and let the store extract the
required values.
2017-12-24 13:52:18 +01:00
Matthias Beyer 840bc86c90
Merge pull request #1178 from matthiasbeyer/libimaghabit/fix-until
Fix: Until date is still optional
2017-12-22 14:39:41 +01:00
Matthias Beyer 6246d25c9d Fix: Until date is still optional 2017-12-22 13:20:11 +01:00
Matthias Beyer 09c9eb6090
Merge pull request #1175 from matthiasbeyer/libimaghabit/remove-unused
libimaghabit: Remove unused things
2017-12-22 12:29:50 +01:00
Matthias Beyer 9bf4b9604b Remove unused variables 2017-12-22 11:03:42 +01:00
Matthias Beyer 90ed0c0e10 Remove unused macro import 2017-12-22 11:02:55 +01:00
Matthias Beyer 96b51280ab Remove unused imports 2017-12-22 11:01:35 +01:00
Matthias Beyer cd8f0beae8 Add until-date support 2017-12-22 10:59:27 +01:00
Matthias Beyer ddf703eaa0 Add HabitTemplate::next_instance_date_after()
Rewrite HabitTemplate::next_instance_date() to use the new function
2017-12-19 19:13:12 +01:00
Matthias Beyer 6f244a52ff Add function to instantiate with a given date
Use that function in the `create_instance()` function which was renamed
to `create_instance_today()`.
2017-12-19 19:13:04 +01:00
Matthias Beyer 13e9ee3ffa Add Habit::next_instance_date() 2017-12-08 14:54:49 +01:00
Matthias Beyer f81faa3f6a Make "util" pub 2017-12-08 14:54:49 +01:00
Matthias Beyer 999bdf8d0d Add HabitTemplate::linked_instances() function 2017-12-08 14:54:49 +01:00
Matthias Beyer 3b319fd4f0 Add HabitInstanceStoreIdIterator::new 2017-12-08 14:54:49 +01:00
Matthias Beyer 30e05d21f9 Add debugging output 2017-12-08 14:54:49 +01:00
Matthias Beyer 90a4139ede Make builder consuming 2017-12-08 14:54:49 +01:00
Matthias Beyer dc7a315176 Getter for all instances 2017-12-08 14:54:45 +01:00
Matthias Beyer b181b488a2 Add extension to check whether an Entry or a StoreId points to a habit instance/template 2017-12-08 14:54:45 +01:00
Matthias Beyer 9af2f34b58 Outsource instance id creation to helper fn 2017-12-08 14:54:45 +01:00
Matthias Beyer 6a13567efc dependency: kairos: beta-1 -> beta-2 2017-12-08 14:54:45 +01:00
Matthias Beyer 0ffbb2ef1a Add kairos error chain integration 2017-12-08 14:54:45 +01:00
Matthias Beyer 2c655daa39 Add IsValidHabitObj helper trait 2017-12-08 14:54:45 +01:00
Matthias Beyer 6b33fc9e6f Update kairos: master -> 0.1.0-beta-1 2017-12-08 14:54:45 +01:00
Matthias Beyer a6a36455f5 Add recur spec with kairos support 2017-12-08 14:54:41 +01:00
Matthias Beyer 42cabffa64 Implement HabitInstance for Entry 2017-12-08 14:54:41 +01:00
Matthias Beyer 533d97532b Move date-string conversion utils to util module 2017-12-08 14:54:40 +01:00
Matthias Beyer a71c9281ec Initial import 2017-12-08 14:54:40 +01:00
Matthias Beyer 167511afec Fix formatting and adjust module/lib documentation
Also add symlink in module implementation to lib-documentation.
2017-12-08 14:54:40 +01:00
Matthias Beyer 04d5af8d50 Switch to upstream rust-vobject 2017-11-09 11:21:17 +01:00
Matthias Beyer dfbc69400a Let ContactData be unpacked and derefd 2017-10-31 19:10:11 +01:00
Matthias Beyer 4fa41faa59 Add iterator for contacts 2017-10-31 19:10:11 +01:00
Matthias Beyer b05c8c6f6d Replace search_contact() with all_contacts()
We can then use filters to filter out the non relevant ones.
2017-10-31 19:10:11 +01:00
Matthias Beyer f3d75e97b6 Rely on own clone of rust-vobject 2017-10-31 19:10:10 +01:00
Matthias Beyer 12e8657eb9 Add Contact::is_contact() 2017-10-31 19:09:43 +01:00
Matthias Beyer f2bd241a59 Add error for header type error 2017-10-31 19:09:43 +01:00