Skip to content

Instantly share code, notes, and snippets.

@gmgp
Forked from JoshCheek/private_attr_writer.rb
Created August 6, 2021 07:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gmgp/73afdb88b5db78cba1f5cceae9a36370 to your computer and use it in GitHub Desktop.
Save gmgp/73afdb88b5db78cba1f5cceae9a36370 to your computer and use it in GitHub Desktop.
private attr_writer
class Klass
def initialize(number)
self.number = number
end
attr_reader :number
private
attr_writer :number
end
Klass.instance_methods false # => [:number]
Klass.new(123).number # => 123
begin
klass = Klass.new 123
klass.number = 456
rescue
$! # => #<NoMethodError: private method `number=' called for #<Klass:0x007fe0fb887c80 @number=123>>
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment