Module: Metanorma::Mirror::Handlers::Sourcecode
- Defined in:
- lib/metanorma/mirror/handlers/sourcecode.rb
Constant Summary collapse
- EXTRA =
{ language: :lang, filename: nil, linenums: nil }.freeze
Class Method Summary collapse
Class Method Details
.call(element, context:) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/metanorma/mirror/handlers/sourcecode.rb', line 9 def self.call(element, context:) attrs = Handlers.extract_attrs(element, extra_attrs: EXTRA) body = SafeAttr.read(element, :body) text = if body Array(body.content).join elsif SafeAttr.read(element, :content).is_a?(String) SafeAttr.read(element, :content) else "" end attrs[:text] = text Handlers.build_node("sourcecode", attrs: attrs.compact) end |