Class: Fastererer::Parser

Inherits:
Object
  • Object
show all
Defined in:
lib/fastererer/parser.rb

Overview

Single seam around Prism.parse: returns the AST root or raises ParseError

Class Method Summary collapse

Class Method Details

.parse(ruby_code) ⇒ Object

Raises:



10
11
12
13
14
15
# File 'lib/fastererer/parser.rb', line 10

def self.parse(ruby_code)
  result = Prism.parse(ruby_code)
  raise ParseError, result.errors.map(&:message).join('; ') if result.failure?

  result.value
end