#ifndef MACRODOWN_PARSER_H
#define MACRODOWN_PARSER_H
#include <string>
#include <vector>
#include <memory>
#include "nodes.h"
#include "markups.h"
namespace macrodown
{
class Parser
{
public:
// Parses a string into a list of nodes (Text and Macros)
// This handles the Inline Parsing phase (Phase 2 of the design)
static std::vector<std::unique_ptr<Node>> parse(
const std::string& input,
const std::vector<PrefixMarkup>& prefix_markups = {},
const std::vector<DelimitedMarkup>& delimited_markups = {});
};
} // namespace macrodown
#endif // MACRODOWN_PARSER_H