lib/asciidoctor/parser.rb in asciidoctor-2.0.17 vs lib/asciidoctor/parser.rb in asciidoctor-2.0.18
- old
+ new
@@ -1050,12 +1050,12 @@
if (extension = options[:extension])
# QUESTION do we want to delete the style?
attributes.delete('style')
if (block = extension.process_method[parent, block_reader || (Reader.new lines), attributes.merge]) && block != parent
attributes.replace block.attributes
- # FIXME if the content model is set to compound, but we only have simple in this context, then
- # forcefully set the content_model to simple to prevent parsing blocks from children
- # TODO document this behavior!!
+ # NOTE an extension can change the content model from :simple to :compound. It's up to the extension
+ # to decide which one to use. The extension can consult the cloaked-context attribute to determine
+ # if the input is a paragraph or delimited block.
if block.content_model == :compound && Block === block && !(lines = block.lines).empty?
content_model = :compound
block_reader = Reader.new lines
end
else