Maintenance Ruby 3.3 gets fixes, but no new features. Switch to Ruby 4.0 →
class method
Prism.parse_lex
parse_lex(code, **options)
lib/prism/ffi.rb
View on GitHub ↗
# File tmp/rubies/ruby-3.3.0/lib/prism/ffi.rb, line 250
def parse_lex(code, **options)
LibRubyParser::PrismBuffer.with do |buffer|
LibRubyParser.pm_serialize_parse_lex(buffer.pointer, code, code.bytesize, dump_options(options))
source = Source.new(code)
loader = Serialize::Loader.new(source, buffer.read)
tokens = loader.load_tokens
node, comments, magic_comments, data_loc, errors, warnings = loader.load_nodes
tokens.each { |token,| token.value.force_encoding(loader.encoding) }
ParseResult.new([node, tokens], comments, magic_comments, data_loc, errors, warnings, source)
end
end
Mirror the Prism.parse_lex API by using the serialization API.
See also
.parse_file_success?
.parse_lex_file
.parse_file_failure?
.parse_success?
also in
4.0 · 3.4