53 Commits

Author SHA1 Message Date
Tom Alexander
90ba17b68c
Switch to a numeric post-blank.
Turns out post-blank has different meanings to different object types so we need to return a number to properly do the compare.
2023-10-31 22:32:01 -04:00
Tom Alexander
31406fd520
Fix clippy.
Some checks failed
clippy Build clippy has succeeded
rust-foreign-document-test Build rust-foreign-document-test has failed
rust-build Build rust-build has succeeded
rust-test Build rust-test has failed
2023-10-31 22:19:39 -04:00
Tom Alexander
49bc51ba89
Compare post-blank. 2023-10-31 22:18:28 -04:00
Tom Alexander
92592104a4
Compare contents begin/end. 2023-10-31 22:11:38 -04:00
Tom Alexander
33f4614d28
Make get_rust_byte_offsets more generic so it can be used for contents.
Some checks failed
clippy Build clippy has failed
rust-foreign-document-test Build rust-foreign-document-test has succeeded
rust-build Build rust-build has succeeded
rust-test Build rust-test has succeeded
2023-10-31 21:59:58 -04:00
Tom Alexander
bcf1b49db2
Remove the GetStandardProperties trait.
This was using dynamic dispatch to deal with enums to avoid the repetitive typing.
2023-10-31 21:26:00 -04:00
Tom Alexander
acfc5e5e68
Only allocate memory when unquoting sexp string that contains escapes.
All checks were successful
rust-build Build rust-build has succeeded
rust-foreign-document-test Build rust-foreign-document-test has succeeded
rust-test Build rust-test has succeeded
clippy Build clippy has succeeded
rustfmt Build rustfmt has succeeded
If the quoted string contains no escape sequences, then unquoting the string can be done by simply shaving off the leading and trailing quotation marks which can be a slice operation. By returning Cow, we can return either a borrowed slice or an owned String.
2023-10-20 12:53:27 -04:00
Tom Alexander
880b00ef3f
Apply more suggestions. 2023-10-16 18:54:41 -04:00
Tom Alexander
3069711447
Apply more suggestions. 2023-10-16 18:29:21 -04:00
Tom Alexander
0aa746fb1e
Implement comparison for object tree. 2023-10-16 12:50:53 -04:00
Tom Alexander
33800c4a88
Implement comparison for optional pair. 2023-10-16 12:05:36 -04:00
Tom Alexander
909ccadfa1
Beginning update to compare_affiliated_keywords. 2023-10-16 11:45:54 -04:00
Tom Alexander
f5a6a26c43
Disable the existing handling of affiliated keywords. 2023-10-15 20:31:14 -04:00
Tom Alexander
f3307a8159
Lifetime issue. 2023-10-11 13:55:43 -04:00
Tom Alexander
4bfa25dcb3
Comparing lists of quoted strings. 2023-10-11 13:04:33 -04:00
Tom Alexander
441a240c33
Comparing single string values. 2023-10-11 13:00:21 -04:00
Tom Alexander
e767892dd5
Add capitalization. 2023-10-11 12:42:42 -04:00
Tom Alexander
8e0a7dea0f
A very simple GetAffiliatedKeywords trait. 2023-10-11 12:19:27 -04:00
Tom Alexander
0d1ab0e75a
Add a debug assert for org entities being sorted. 2023-10-11 12:16:35 -04:00
Tom Alexander
7cb71a5a0a
Compare the additional properties on headlines. 2023-10-10 17:40:27 -04:00
Tom Alexander
3aca01891d
Remove the old implementation of comparing headlines. 2023-10-10 16:12:29 -04:00
Tom Alexander
ee5ed17c20
Implement ExactSizeIterator for DocumentIter. 2023-10-10 15:19:42 -04:00
Tom Alexander
a873794068
Starting a compare properties document function. 2023-10-10 14:58:18 -04:00
Tom Alexander
84ec2f2023
Introduce functions to compare children and assert there are no children. 2023-10-09 13:01:55 -04:00
Tom Alexander
d53b9e1e1f
Fix get_property.
This was returning the error when a token was not an atom whereas we only wanted to check to see if it was the atom nil.
2023-10-02 19:22:35 -04:00
Tom Alexander
54c66fb4d6
Change get_property to allow absent values.
We're returning an Option<> anyway so might as well handle absent values.
2023-10-02 19:07:12 -04:00
Tom Alexander
a8a34e2d9c
Compare date start/end. 2023-10-02 16:16:19 -04:00
Tom Alexander
c55fae86f8
Improve lifetimes for get_property_numeric. 2023-10-02 15:51:29 -04:00
Tom Alexander
e7ec23af3d
Move the Date struct into types and implement a get_property_numeric. 2023-10-02 15:49:51 -04:00
Tom Alexander
418c5c1ce8
Implement the traits for all ast node types. 2023-10-02 12:53:23 -04:00
Tom Alexander
ecd523fa8f
Fix lifetimes in the compare functions. 2023-10-02 12:36:09 -04:00
Tom Alexander
178894680b
Compare footnote section. 2023-10-02 10:48:34 -04:00
Tom Alexander
967e74c147
Compare plain list item bullets. 2023-09-29 17:28:50 -04:00
Tom Alexander
f820e27b17
Compare plain list type in diff.rs. 2023-09-29 13:03:25 -04:00
Tom Alexander
d5b1014fe4
Unify the standard properties checks in diff.
Instead of copy+pasting them into each compare function, we now call a shared function from a handful of places.
2023-09-23 21:05:56 -04:00
Tom Alexander
dd8a8207ce
Move assert bounds for elements and objects (except PlainText) to the compare element/object functions. 2023-09-23 19:35:12 -04:00
Tom Alexander
d4f27ef297
Remove only use of Source trait. 2023-09-23 17:59:13 -04:00
Tom Alexander
f25246556c
Rename the existing StandardProperties struct to EmacsStandardProperties. 2023-09-23 17:44:54 -04:00
Tom Alexander
a651b79e77
Move sexp into compare. 2023-09-11 15:37:20 -04:00
Tom Alexander
84953c1669
Put back in needed pubs. 2023-09-11 14:59:23 -04:00
Tom Alexander
7650a9edff
Remove all pub. 2023-09-11 13:11:08 -04:00
Tom Alexander
93d3d9471f
Compare priority, archived, and commented in headlines. 2023-09-08 16:00:16 -04:00
Tom Alexander
d262833f9b
Fixing more errors. 2023-09-03 12:52:09 -04:00
Tom Alexander
80d77ff5d6
Fix handling of unicode in compare tests.
All checks were successful
rustfmt Build rustfmt has succeeded
rust-test Build rust-test has succeeded
rust-build Build rust-build has succeeded
2023-08-31 20:20:00 -04:00
Tom Alexander
58aca53144
Move get_property into util. 2023-08-29 22:07:23 -04:00
Tom Alexander
f170a557ed
Use character offsets in diff. 2023-08-29 21:49:16 -04:00
Tom Alexander
bc5745a95f
Add support for list items with a line break before their contents. 2023-08-25 05:18:26 -04:00
Tom Alexander
16a107eebb
Update org-mode version. 2023-08-25 02:56:28 -04:00
Tom Alexander
e33ec4a02c
Add support for reading begin/end bounds in the new standard-properties format. 2023-08-13 02:21:02 -04:00
Tom Alexander
7de72cab23
Move the sexp parser into the parser crate.
We need to parse sexp for diary sexp.
2023-04-21 20:32:51 -04:00