1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-06-01 11:18:13 +00:00

LibMarkdown: Add LineIterator

LineIterator wraps a vector's ConstIterator, to provide an iterator that
can work on indented container blocks (like lists and blockquotes).
This commit is contained in:
Peter Elliott 2021-09-19 11:14:18 -06:00 committed by Ali Mohammad Pur
parent cd560d3ae3
commit 10f6f6a723
16 changed files with 139 additions and 21 deletions

View file

@ -6,13 +6,8 @@
*/
#include <AK/StringBuilder.h>
#include <LibMarkdown/CodeBlock.h>
#include <LibMarkdown/Document.h>
#include <LibMarkdown/Heading.h>
#include <LibMarkdown/HorizontalRule.h>
#include <LibMarkdown/List.h>
#include <LibMarkdown/Paragraph.h>
#include <LibMarkdown/Table.h>
#include <LibMarkdown/LineIterator.h>
namespace Markdown {
@ -49,7 +44,7 @@ String Document::render_for_terminal(size_t view_width) const
OwnPtr<Document> Document::parse(const StringView& str)
{
const Vector<StringView> lines_vec = str.lines();
auto lines = lines_vec.begin();
LineIterator lines(lines_vec.begin());
return make<Document>(ContainerBlock::parse(lines));
}