Maintenance Ruby 3.3 gets fixes, but no new features. Switch to Ruby 4.0 →
instance method
Regexp#as_json
as_json(*)
ext/json/lib/json/add/regexp.rb
View on GitHub ↗
# File tmp/rubies/ruby-3.3.0/ext/json/lib/json/add/regexp.rb, line 28
def as_json(*)
{
JSON.create_id => self.class.name,
'o' => options,
's' => source,
}
end
Methods Regexp#as_json and Regexp.json_create may be used to serialize and deserialize a Regexp object; see Marshal.
Method Regexp#as_json serializes self, returning a 2-element hash representing self:
Example
require 'json/add/regexp' x = /foo/.as_json # => {"json_class"=>"Regexp", "o"=>0, "s"=>"foo"}
Method JSON.create deserializes such a hash, returning a Regexp object:
Example
Regexp.json_create(x) # => /foo/