59 virtual void heading(
const std::string & name,
const std::string & section,
60 const std::string & synopsis) = 0;
61 virtual void start_usage_lines() = 0;
62 virtual void usage_line(
const std::string & name,
const std::string & line) = 0;
64 virtual void start_description(
const std::string & description) = 0;
65 virtual void extra_description(
const std::string & description) = 0;
66 virtual void end_description() = 0;
68 virtual void start_options(
const std::string &) = 0;
69 virtual void start_arg_group(
const std::string & name,
const std::string & description) = 0;
70 virtual void arg_group_item(
const char & short_name,
const std::string & long_name,
71 const std::string & negated_long_name,
const std::string & description) = 0;
72 virtual void start_extra_arg() = 0;
73 virtual void extra_arg_enum(
const AllowedEnumArg &,
const std::string & default_arg) = 0;
74 virtual void extra_arg_string_set(
const std::string & first,
const std::string & second) = 0;
75 virtual void end_extra_arg() = 0;
76 virtual void end_arg_group() = 0;
77 virtual void end_options() = 0;
79 virtual void start_environment() = 0;
80 virtual void environment_line(
const std::string & first,
const std::string & second) = 0;
81 virtual void end_environment() = 0;
83 virtual void start_examples() = 0;
84 virtual void example(
const std::string &,
const std::string &) = 0;
85 virtual void end_examples() = 0;
87 virtual void start_notes() = 0;
88 virtual void note(
const std::string &) = 0;
89 virtual void end_notes() = 0;
91 virtual void section(
const std::string & title) = 0;
92 virtual void subsection(
const std::string & title) = 0;
93 virtual void paragraph(
const std::string & text) = 0;
95 virtual void start_see_alsos() = 0;
96 virtual void see_also(
const std::string &,
const int,
const bool first) = 0;
97 virtual void end_see_alsos() = 0;
117 AsciidocWriter(std::ostream & os);
118 ~AsciidocWriter()
override =
default;
121 void heading(
const std::string & name,
const std::string & section,
122 const std::string & synopis)
override;
123 void start_usage_lines()
override;
124 void usage_line(
const std::string & name,
const std::string & line)
override;
126 void start_description(
const std::string & description)
override;
127 void extra_description(
const std::string & description)
override;
128 void end_description()
override;
130 void start_options(
const std::string & s)
override;
131 void start_arg_group(
const std::string & name,
const std::string & description)
override;
132 void arg_group_item(
const char & short_name,
const std::string & long_name,
133 const std::string & negated_long_name,
const std::string & description)
override;
134 void start_extra_arg()
override;
135 void extra_arg_enum(
const AllowedEnumArg &,
const std::string & default_arg)
override;
136 void extra_arg_string_set(
const std::string & first,
const std::string & second)
override;
137 void end_extra_arg()
override;
138 void end_arg_group()
override;
139 void end_options()
override;
141 void start_environment()
override;
142 void environment_line(
const std::string & first,
const std::string & second)
override;
143 void end_environment()
override;
145 void start_examples()
override;
146 void example(
const std::string &,
const std::string &)
override;
147 void end_examples()
override;
149 void start_notes()
override;
150 void note(
const std::string &)
override;
151 void end_notes()
override;
153 void section(
const std::string & title)
override;
154 void subsection(
const std::string & title)
override;
155 void paragraph(
const std::string & text)
override;
157 void start_see_alsos()
override;
158 void see_also(
const std::string &,
const int,
const bool first)
override;
159 void end_see_alsos()
override;