lipsum-cpp 0.5.4
A basic library written in C++ for generating placeholder Lorem Ipsum text.
Loading...
Searching...
No Matches
GeneratorFormats.cpp
#ifndef LIPSUM_BUILD_STATIC
# define LIPSUM_IMPLEMENTATION // only for header-only usage
#endif
#include <lipsum.hpp>
int main()
{
// Create a generator using corporate ipsum and the specified seed.
lpsm::Generator gen("corpo", 1234);
// Change to 6-9 words per sentence fragment,
// 3-6 sentence fragments per sentence,
// 6-9 items in JSON arrays/objects
gen.change_setting("word", 6, 9);
gen.change_setting("frag", 3, 6);
gen.change_setting("jsonLength", 6, 9);
// Generate a URL.
std::cout << gen.url() << '\n';
// Generate a plain URL.
std::cout << gen.plain_url() << '\n';
// Generate an email.
std::cout << gen.email() << '\n';
// Generate a slug.
std::cout << gen.slug('_') << '\n';
// Generate a camel case case slug.
std::cout << gen.case_slug(lpsm::CaseSlugCase::CamelCase) << '\n';
// Generate a C++ pseudocode block.
std::cout << gen.code(lpsm::CodeLanguage::Cpp) << '\n';
// Generate a scramble.
std::cout << gen.scramble(24, 'a', 'z') << '\n';
// Generate an IPv6 IP address with a port.
std::cout << gen.ip_addr(lpsm::IPV6, lpsm::PORT) << '\n';
// Generate a phone number.
std::cout << gen.phone_number() << '\n';
// Generate 5 Markdown paragraphs.
std::cout << gen.fmt_paragraph(5, lpsm::USELIPSUM, lpsm::MARKDOWN);
// Generate a Markdown document with 20 elements.
std::cout << gen.fmt_text(20, lpsm::MARKDOWN);
// Generate a Markdown subtitle.
std::cout << gen.fmt_header(2, lpsm::MARKDOWN);
// Generate an italic Markdown sentence.
std::cout << gen.fmt_emphasis(lpsm::ITALIC, lpsm::MARKDOWN) << '\n';
// Generate a Markdown link.
std::cout << gen.fmt_link(lpsm::MARKDOWN) << '\n';
// Generate an ordered Markdown list.
std::cout << gen.fmt_list(lpsm::ORDERED, lpsm::MARKDOWN);
// Generate 5 HTML paragraphs.
std::cout << gen.fmt_paragraph(5, lpsm::USELIPSUM, lpsm::HTML);
// Generate an HTML document with 20 elements.
std::cout << gen.fmt_text(20, lpsm::HTML);
// Generate an XML document with 40 "choices".
std::cout << gen.xml(40) << '\n';
// Generate a JSON object with a max recursion of 5.
std::cout << gen.json(5, lpsm::OBJECT) << '\n';
// Generate a JSON value with a max recursion of 5.
std::cout << gen.json_value(5) << '\n';
// Generate a CSV document.
std::cout << gen.csv();
return 0;
}
Main class of lipsum-cpp.
Definition generator.hpp:92
void change_setting(const std::string &setting, const ArgVec2 &value)
Change a setting.
Definition generatorcore.inl:131
std::string xml(int choices=30)
Generate an XML document.
Definition generatorformats.inl:222
std::string ip_addr(bool useIpv6=false, bool usePort=false)
Generate an IP address.
Definition generator.inl:442
std::string fmt_emphasis(bool isBold=true, bool useHtml=false)
Generate an emphasized Markdown or HTML sentence.
Definition generatorformats.inl:145
std::string plain_url()
Generate a plain URL.
Definition generator.inl:190
std::string scramble(int length=16, char minChar=' ', char maxChar='~')
Generate a random character scramble.
Definition generator.inl:162
std::string fmt_paragraph(int num=1, bool useLipsum=true, bool useHtml=false)
Generate Markdown or HTML paragraphs.
Definition generatorformats.inl:27
std::string json_value(int maxDepth=3)
Generate a JSON value.
Definition generatorformats.inl:322
std::string fmt_header(int level=1, bool useHtml=false)
Generate a Markdown or HTML header.
Definition generatorformats.inl:110
std::string fmt_list(bool ordered=false, bool useHtml=false)
Generate a Markdown or HTML list.
Definition generatorformats.inl:186
std::string json(int maxDepth=3, bool isObject=true)
Generate a JSON object or array.
Definition generatorformats.inl:293
std::string fmt_link(bool useHtml=false)
Generate a Markdown or HTML link.
Definition generatorformats.inl:173
std::string url()
Generate a URL.
Definition generator.inl:184
std::string phone_number()
Generate a phone number.
Definition generator.inl:474
std::string email()
Generate an email.
Definition generator.inl:196
std::string fmt_text(int numElements=15, bool useHtml=false)
Generate a Markdown or HTML document.
Definition generatorformats.inl:53
std::string csv()
Generate a CSV document.
Definition generatorformats.inl:392
std::string code(CodeLanguage lang=CodeLanguage::Cpp)
Generate a code block.
Definition generator.inl:269
std::string slug(char separator='-')
Generate a slug.
Definition generator.inl:203
std::string case_slug(CaseSlugCase case_=CaseSlugCase::CamelCase)
Generate a case slug.
Definition generator.inl:212
Main header of lipsum-cpp.