Skip to content

End of Life Ruby 3.0 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →

class method

Ripper.tokenize

tokenize(src, filename = '-', lineno = 1, **kw)

Tokenizes the Ruby program and returns an array of strings. The filename and lineno arguments are mostly ignored, since the return value is just the tokenized input. By default, this method does not handle syntax errors in src, use the raise_errors keyword to raise a SyntaxError for an error in src.

Example
p Ripper.tokenize("def m(a) nil end")
   # => ["def", " ", "m", "(", "a", ")", " ", "nil", " ", "end"]
See also .slice #column .sexp_raw #compile_error also in 4.1 · 4.0 · 3.4 · 3.3 · 3.2 · 3.1