Class: Commonmarker::Merge::Provider

Inherits:
Markdown::Merge::SourcePreservingProvider
  • Object
show all
Defined in:
lib/commonmarker/merge/provider.rb,
sig/commonmarker/merge.rbs

Overview

Native Commonmarker backend configuration for the shared provider engine.

Instance Method Summary collapse

Constructor Details

#initializeProvider

rubocop:disable Metrics/MethodLength -- constructor declares the complete backend boundary



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/commonmarker/merge/provider.rb', line 9

def initialize
  super(
    provider_id: 'ruby.markdown.commonmarker',
    role: :backend,
    backend: Markdown::Merge::ProviderBackend.new(
      id: :commonmarker,
      package: PACKAGE_NAME,
      dialects: %i[markdown commonmark],
      parser: lambda { |source|
        parser = Backend::Parser.new
        parser.language = Backend::Language.markdown
        parser.parse(source)
      },
      headings: Markdown::Merge::ProviderBackend.method(:native_headings)
    )
  )
end