rails style initialize

Run Settings
LanguageRuby
Language Version
Run Command
module I module ClassMethods def init(**kwargs) (@_i ||= {}).merge!(kwargs) end end module InstanceMethods def initialize(*) super if defined? super self.class.instance_variable_get(:@_i).each do |k, v| singleton_class.class_eval { attr_accessor k } instance_variable_set("@#{k}", v) end end end def self.included(receiver) receiver.extend ClassMethods receiver.include InstanceMethods end end class A include I init(a: 42) end p A.new.a
Editor Settings
Theme
Key bindings
Full width
Lines