Commit Graph

45 Commits

Author SHA1 Message Date
Matthias Beyer c37ca59eef Remove unused keyword "mut" 2016-04-16 22:04:08 +02:00
Matthias Beyer c9086e9850 Remove unused imports 2016-04-16 22:03:42 +02:00
Matthias Beyer e4e3c05f05 Merge pull request #326 from matthiasbeyer/libimaglink/external-linking-rewrite
Libimaglink/external linking rewrite
2016-04-16 17:05:38 +02:00
Matthias Beyer 59071c9948 Refactor: Use helper for type conversions instead of doing everything three times 2016-04-16 16:09:34 +02:00
Matthias Beyer 915e711c3e Sort links alphabetically before writing 2016-04-16 16:09:00 +02:00
Matthias Beyer b63e2cb7b2 Make links unique before writing 2016-04-16 15:54:38 +02:00
Matthias Beyer 0f7b2f16f9 Add dependency: itertool = 0.4.7 2016-04-16 15:54:25 +02:00
Matthias Beyer 22a64dbc30 Rewrite set_external_links() 2016-04-16 15:38:51 +02:00
Matthias Beyer f482c2564b Reimplement hash generation with rust-crypto 2016-04-16 15:38:51 +02:00
Matthias Beyer 781498832b Add dependency rust-crypto 2016-04-16 15:38:41 +02:00
Matthias Beyer fdb03666b8 Add debug!() calls for external linking source 2016-04-16 15:37:01 +02:00
Matthias Beyer 766fb2a9e2 Implement remove_external_link() 2016-04-16 15:37:01 +02:00
Matthias Beyer 3a89607922 Add implementation for add_external_link() 2016-04-16 15:37:01 +02:00
Matthias Beyer f85faca6b3 Add StoreWriteError error type 2016-04-16 15:37:01 +02:00
Matthias Beyer 23049d02c6 Implement link setting 2016-04-16 15:37:01 +02:00
Matthias Beyer 890458ea1e Add module_entry_path_mod!() call, so we have an own module path for the link library
- Add missing extern crate semver
- Add missing semver import
2016-04-16 15:36:50 +02:00
Matthias Beyer 91caa0c665 Implement get_external_links() 2016-04-16 13:33:13 +02:00
Matthias Beyer 5645edeeff Rewrite external linking 2016-04-16 13:33:13 +02:00
Matthias Beyer 0cc50691b6 Rewrite process_rw_result()
It did not cover the aspect that the passed toml `Value` object was an
Array in the first place and assumed that it is an `String` instead,
which caused the function always to return an Result::Err, which was
obviousely buggy.

This is almost a rewrite of the process_rw_result() function which takes
the additional layer (Array(String)) into account and therefor fixes
this issue.
2016-04-12 22:00:40 +02:00
Matthias Beyer 8d9d6651fb Refactor common pattern into function 2016-04-09 14:43:11 +02:00
Matthias Beyer 77fa6d71b3 Rewrite internal linking to use StoreId instead of String as Link type 2016-04-08 23:57:16 +02:00
Matthias Beyer 7fc7d8a696 Add README for libimaglink 2016-03-25 15:56:42 +01:00
Matthias Beyer 086ad0ec69 Add external-link validation before setting 2016-03-11 15:15:02 +01:00
Matthias Beyer 695ee9df9b Add (external) link validation 2016-03-11 15:15:02 +01:00
Matthias Beyer cb288eb868 Rewrite internal linking
* so you need to pass Entry instead of Link
* interal linking does two-way-linking
2016-03-11 15:15:02 +01:00
Matthias Beyer 3b02a30788 Move Link/Links type to external linking code 2016-03-11 15:15:02 +01:00
Matthias Beyer b8766a224e Implement ExternalLinker for Entry for convenience 2016-03-11 15:15:02 +01:00
Matthias Beyer d6029678c7 Implement InternalLinker for Entry, for convenience 2016-03-11 15:15:02 +01:00
Matthias Beyer defec535c8 Refactor internal link helpers into trait 2016-03-11 15:15:02 +01:00
Matthias Beyer 1e17b10568 Refactor external linking into trait 2016-03-11 15:15:02 +01:00
Matthias Beyer 277c31237a lib: Add remove_link() 2016-03-11 15:15:02 +01:00
Matthias Beyer b7a5f57e3a lib: Implement add_link() 2016-03-11 15:15:02 +01:00
Matthias Beyer 339ec08a83 lib: Add Links::{add,remove}() 2016-03-11 15:15:02 +01:00
Matthias Beyer 6480fb515c lib: Derive some traits for Link{,s} type 2016-03-11 15:15:02 +01:00
Matthias Beyer 19322b667a Add helper for processing store result 2016-03-11 15:15:02 +01:00
Matthias Beyer a53d36c23d Implement internal::set_links() 2016-03-11 15:15:02 +01:00
Matthias Beyer 950dce945f Implement internal::get_links() 2016-03-11 15:15:02 +01:00
Matthias Beyer b6168f50a1 Implement: Links::new() 2016-03-11 15:15:02 +01:00
Matthias Beyer e4fae4cfcf Implement: of external::set_link() 2016-03-11 15:15:02 +01:00
Matthias Beyer 18de6b80d5 Implement: external::get_link() 2016-03-11 15:15:02 +01:00
Matthias Beyer e6e9a1a19e Add Error kinds 2016-03-11 15:15:02 +01:00
Matthias Beyer 17daf7c387 Add Link::new() 2016-03-11 15:15:02 +01:00
Matthias Beyer ff3d5dd94b Add initial interface spec 2016-03-11 15:15:02 +01:00
Matthias Beyer 2430e68dc2 Add dependencies 2016-03-11 15:15:02 +01:00
Matthias Beyer e43bfa2c2c init: libimaglink 2016-03-11 15:15:02 +01:00