///|
/// Global compliance settings (Ruby `Asciidoctor::Compliance`).
pub(all) struct Compliance {
mut block_terminates_paragraph : Bool
mut strict_verbatim_paragraphs : Bool
mut underline_style_section_titles : Bool
mut unwrap_standalone_preamble : Bool
mut attribute_missing : String
mut attribute_undefined : String
mut shorthand_property_syntax : Bool
mut natural_xrefs : Bool
mut unique_id_start_index : Int
mut markdown_syntax : Bool
}
///|
fn Compliance::defaults() -> Compliance {
{
block_terminates_paragraph: true,
strict_verbatim_paragraphs: true,
underline_style_section_titles: true,
unwrap_standalone_preamble: true,
attribute_missing: "skip",
attribute_undefined: "drop-line",
shorthand_property_syntax: true,
natural_xrefs: true,
unique_id_start_index: 2,
markdown_syntax: true,
}
}
///|
/// The global compliance settings.
pub let compliance : Compliance = Compliance::defaults()
///|
/// Restores the default compliance settings.
pub fn reset_compliance() -> Unit {
let d = Compliance::defaults()
compliance.block_terminates_paragraph = d.block_terminates_paragraph
compliance.strict_verbatim_paragraphs = d.strict_verbatim_paragraphs
compliance.underline_style_section_titles = d.underline_style_section_titles
compliance.unwrap_standalone_preamble = d.unwrap_standalone_preamble
compliance.attribute_missing = d.attribute_missing
compliance.attribute_undefined = d.attribute_undefined
compliance.shorthand_property_syntax = d.shorthand_property_syntax
compliance.natural_xrefs = d.natural_xrefs
compliance.unique_id_start_index = d.unique_id_start_index
compliance.markdown_syntax = d.markdown_syntax
}