Sha256: 6406f7c4aee18482bce400232a6691308925eb155d861493b07ebb124ad15003

Contents?: true

Size: 712 Bytes

Versions: 4

Compression:

Stored size: 712 Bytes

Contents

# frozen_string_literal: true

module Mutant
  class AST
    module Regexp
      class Transformer
        # Transformer for root nodes
        class Root < self
          register :regexp_root_expression

          ExpressionToAST = Class.new(Recursive::ExpressionToAST)

          # Mapper from `Parser::AST::Node` to `Regexp::Expression`
          class ASTToExpression < Transformer::ASTToExpression

          private

            def transform
              ::Regexp::Expression::Root.build.tap do |root|
                root.expressions = subexpressions
              end
            end
          end # ASTToExpression
        end # Root
      end # Transformer
    end # Regexp
  end # AST
end # Mutant

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
mutant-0.11.17 lib/mutant/ast/regexp/transformer/root.rb
mutant-0.11.16 lib/mutant/ast/regexp/transformer/root.rb
mutant-0.11.15 lib/mutant/ast/regexp/transformer/root.rb
mutant-0.11.14 lib/mutant/ast/regexp/transformer/root.rb