summaryrefslogtreecommitdiff
path: root/lib/gitlab/gfm/ast/parser.rb
blob: 217856188ee7e47e01b9458ad80a307d0c387907 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
module Gitlab
  module Gfm
    module Ast
      class Parser
        attr_reader :tree

        def initialize(text)
          @text = text
          @lexer = Lexer.new(@text, [Syntax::Content])
          @nodes = @lexer.process!
        end

        def tree
          @nodes.first
        end

        def recreate
          tree.to_s
        end
      end
    end
  end
end