class Mutest::AST::Regexp::Transformer

Regexp bijective mapper

Transforms parsed regular expression representation from `Regexp::Expression` instances (provided by `regexp_parser`) into equivalent representations using `Parser::AST::Node`

Constants

REGISTRY

Public Class Methods

lookup(type) click to toggle source

Lookup transformer class for regular expression node type

@param type [Symbol]

@return [Class<Transformer>]

# File lib/mutest/ast/regexp/transformer.rb, line 19
def self.lookup(type)
  REGISTRY.lookup(type)
end
to_ast(expression) click to toggle source

Transform expression

@param expression [Regexp::Expression::Base]

@return [Parser::AST::Node]

# File lib/mutest/ast/regexp/transformer.rb, line 38
def self.to_ast(expression)
  self::ExpressionToAST.call(expression)
end
to_expression(node) click to toggle source

Transform node

@param node [Parser::AST::Node]

@return [Regexp::Expression::Base]

# File lib/mutest/ast/regexp/transformer.rb, line 47
def self.to_expression(node)
  self::ASTToExpression.call(node)
end

Private Class Methods

register(type) click to toggle source

Register transformer class as responsible for handling node type

@param type [Symbol]

@return [undefined]

# File lib/mutest/ast/regexp/transformer.rb, line 28
def self.register(type)
  REGISTRY.register(type, self)
end