aboutsummaryrefslogtreecommitdiffstats
path: root/src/content/document.rs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add support for passing `ok`, `nok` as separate states to attemptsLibravatar Titus Wormer2022-08-091-22/+20
|
* Rewrite algorithm to not pass around boxed functionsLibravatar Titus Wormer2022-08-091-190/+372
| | | | | | * Pass state names from an enum around instead of boxed functions * Refactor to simplify attempts a lot * Use a subtokenizer for the the `document` content type
* Refactor to remove most closuresLibravatar Titus Wormer2022-08-021-140/+139
|
* Refactor to improve statesLibravatar Titus Wormer2022-07-291-4/+3
| | | | | | | | | | | | * Remove custom kind wrappers, use plain bytes instead * Remove `Into`s, use the explicit expected types instead * Refactor to use `slice.as_str` in most places * Remove unneeded unique check before adding a definition * Use a shared CDATA prefix in constants * Inline byte checks into matches * Pass bytes back from parser instead of whole parse state * Refactor to work more often on bytes * Rename custom `size` to `len`
* Refactor to work on bytes (`u8`)Libravatar Titus Wormer2022-07-291-12/+5
|
* Refactor to use `debug_assert`Libravatar Titus Wormer2022-07-281-1/+1
|
* Refactor to work on `char`sLibravatar Titus Wormer2022-07-281-9/+30
| | | | | | | | | | | | | | | Previously, a custom char implementation was used. This was easier to work with, as sometimes “virtual” characters are injected, or characters are ignored. This replaces that with working on actual `char`s. In the hope of in the future working on `u8`s, even. This simplifies the state machine somewhat, as only `\n` is fed, regardless of whether it was a CRLF, CR, or LF. It also feeds `' '` instead of virtual spaces. The BOM, if present, is now available as a `ByteOrderMark` event.
* Refactor to drastically improve perf around whitespaceLibravatar Titus Wormer2022-07-261-6/+7
|
* Refactor to simplify tokenizerLibravatar Titus Wormer2022-07-261-3/+3
|
* Refactor to not pass codes aroundLibravatar Titus Wormer2022-07-251-41/+27
|
* Remove no longer needed field in `State::Ok`Libravatar Titus Wormer2022-07-251-4/+2
|
* Refactor to remove need for cloning codesLibravatar Titus Wormer2022-07-251-1/+1
|
* Improve performance w/ a single feed loopLibravatar Titus Wormer2022-07-251-1/+1
|
* Refactor to use a single shared edit mapLibravatar Titus Wormer2022-07-221-5/+3
|
* Refactor to remove unneeded tuples in every statesLibravatar Titus Wormer2022-07-221-40/+17
|
* Refactor to pass ints instead of vecs aroundLibravatar Titus Wormer2022-07-221-4/+4
|
* Refactor to move `index` field to `point`Libravatar Titus Wormer2022-07-211-9/+2
|
* Refactor to move some event fields to `link`Libravatar Titus Wormer2022-07-211-3/+1
|
* Refactor to improve cloning in `document`Libravatar Titus Wormer2022-07-201-53/+49
|
* Refactor to use less vecs for eventsLibravatar Titus Wormer2022-07-201-7/+8
|
* Refactor to remove cloning in `edit_map`Libravatar Titus Wormer2022-07-191-4/+4
|
* Remove an unneeded `HashMap`Libravatar Titus Wormer2022-07-191-2/+2
|
* Replace use of `HashSet` with `vec`Libravatar Titus Wormer2022-07-191-4/+7
|
* Fix final bug with lazinessLibravatar Titus Wormer2022-07-181-8/+1
|
* Add docs and refactor listLibravatar Titus Wormer2022-07-151-45/+29
|
* Add docs and refactor document content typeLibravatar Titus Wormer2022-07-151-259/+268
|
* Add missing docs to tokenizerLibravatar Titus Wormer2022-07-151-6/+3
|
* Fix annoying bug around virtual spaces in containersLibravatar Titus Wormer2022-07-151-3/+2
|
* Fix interrupting sibling list itemsLibravatar Titus Wormer2022-07-141-5/+24
|
* Add support for container stateLibravatar Titus Wormer2022-07-141-9/+30
| | | | | | * Fix to parse list item continuation based on how big the initial list item prefix was * Fix list items that start with blank lines
* Fix a bunch of container thingsLibravatar Titus Wormer2022-07-141-154/+178
| | | | | | | | * Fix a lot of container code * Fix to prevent code (indented) from interrupting a lazy container * Fix compiling when combining tight paragraphs, empty list items, and html * Fix list items starting w/ blank lines causing loose lists * Fix crash when looking for a previous blank line
* Fix lists in lists and some other bugsLibravatar Titus Wormer2022-07-131-4/+4
|
* Fix to close containers before several (blank) line endingsLibravatar Titus Wormer2022-07-131-7/+17
|
* Fix some issues around empty listsLibravatar Titus Wormer2022-07-121-0/+3
|
* Fix a lot of list thingsLibravatar Titus Wormer2022-07-121-5/+18
| | | | | | | | * Add `ListItem`, `ListOrdered`, and `ListUnordered` tokens * Add support for multiline list items * Add support for tight lists * Fix bug where 10 digit long list item values worked * Fix skip bug when skipping over nested events
* Add initial support for listsLibravatar Titus Wormer2022-07-121-10/+21
|
* Add support for lazy linesLibravatar Titus Wormer2022-07-111-154/+53
|
* Fix block quote bugsLibravatar Titus Wormer2022-07-111-2/+6
|
* Fix bug around forcibly closed flow exitsLibravatar Titus Wormer2022-07-081-0/+15
|
* Fix interrupting when exiting containersLibravatar Titus Wormer2022-07-081-0/+3
|
* Fix container bug due to attemptsLibravatar Titus Wormer2022-07-081-14/+36
|
* Add improved container enter/exit mechanismLibravatar Titus Wormer2022-07-081-66/+122
|
* Fix closing of flow when exiting containersLibravatar Titus Wormer2022-07-081-13/+32
|
* Add support for concrete constructsLibravatar Titus Wormer2022-07-081-7/+8
|
* Refactor to move token types to `token`Libravatar Titus Wormer2022-07-071-7/+4
|
* Add basic support for block quotesLibravatar Titus Wormer2022-07-071-0/+439