1 /*============================================================================= 2 Copyright (c) 2017 Daniel James 3 4 Use, modification and distribution is subject to the Boost Software 5 License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 6 http://www.boost.org/LICENSE_1_0.txt) 7 =============================================================================*/ 8 9 #include "html_printer.hpp" 10 #include "utils.hpp" 11 12 namespace quickbook 13 { 14 namespace detail 15 { open_tag(html_printer & printer,quickbook::string_view name)16 void open_tag(html_printer& printer, quickbook::string_view name) 17 { 18 tag_start(printer, name); 19 tag_end(printer); 20 } 21 close_tag(html_printer & printer,quickbook::string_view name)22 void close_tag(html_printer& printer, quickbook::string_view name) 23 { 24 printer.html += "</"; 25 printer.html.append(name.begin(), name.end()); 26 printer.html += ">"; 27 } 28 tag_start(html_printer & printer,quickbook::string_view name)29 void tag_start(html_printer& printer, quickbook::string_view name) 30 { 31 printer.html += "<"; 32 printer.html.append(name.begin(), name.end()); 33 } 34 tag_end(html_printer & printer)35 void tag_end(html_printer& printer) { printer.html += ">"; } 36 tag_end_self_close(html_printer & printer)37 void tag_end_self_close(html_printer& printer) { printer.html += "/>"; } 38 tag_attribute(html_printer & printer,quickbook::string_view name,quickbook::string_view value)39 void tag_attribute( 40 html_printer& printer, 41 quickbook::string_view name, 42 quickbook::string_view value) 43 { 44 printer.html += " "; 45 printer.html.append(name.begin(), name.end()); 46 printer.html += "=\""; 47 printer.html.append(encode_string(value)); 48 printer.html += "\""; 49 } 50 } 51 } 52