remwharead
0.8.6
include
export
adoc.hpp
1
/* This file is part of remwharead.
2
* Copyright © 2019 tastytea <tastytea@tastytea.de>
3
*
4
* This program is free software: you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation, version 3.
7
*
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU General Public License for more details.
12
*
13
* You should have received a copy of the GNU General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15
*/
16
17
#ifndef REMWHAREAD_EXPORT_ADOC_HPP
18
#define REMWHAREAD_EXPORT_ADOC_HPP
19
20
#include "export.hpp"
21
#include "sqlite.hpp"
22
#include <map>
23
#include <string>
24
#include <vector>
25
26
namespace
remwharead::Export
27
{
28
using
std::string;
29
37
class
AsciiDoc
:
protected
ExportBase
38
{
39
public
:
40
using
ExportBase::ExportBase
;
41
42
void
print
()
const override
;
43
44
private
:
45
using
tagmap = std::map<string, list<Database::entry>>;
46
using
replacemap =
const
std::map<const string, const string>;
47
49
[[nodiscard]]
50
string
replace(
string
text,
const
replacemap &replacements)
const
;
51
53
[[nodiscard]]
54
string
replace_in_tag(
const
string
&text)
const
;
55
57
[[nodiscard]]
58
string
replace_in_title(
const
string
&text)
const
;
59
61
[[nodiscard]]
62
string
replace_in_uri(
const
string
&text)
const
;
63
65
void
print_tags(
const
tagmap &tags)
const
;
66
68
[[nodiscard]]
69
string
get_day(
const
Database::entry
&entry)
const
;
70
72
[[nodiscard]]
73
string
get_time(
const
Database::entry
&entry)
const
;
74
};
75
}
// namespace remwharead::Export
76
77
#endif // REMWHAREAD_EXPORT_ADOC_HPP
remwharead::Export::AsciiDoc
Export as AsciiDoc document.
Definition:
adoc.hpp:37
remwharead::Export::ExportBase::ExportBase
ExportBase(const list< Database::entry > &entries, ostream &out=cout)
Export list of Database::entry.
Definition:
export.cpp:22
remwharead::Export::ExportBase
Base class for exports.
Definition:
export.hpp:36
remwharead::Database::entry
Describes a database entry.
Definition:
sqlite.hpp:55
remwharead::Export::AsciiDoc::print
void print() const override
Print output to std::ostream.
Generated by
1.8.15