Sha256: b223494e61a9b4f52bb2a05f97eeeae4f31498c07b0524010800585d4c6d9625
Contents?: true
Size: 963 Bytes
Versions: 2
Compression:
Stored size: 963 Bytes
Contents
--- title: Readers layout: gem-single name: dry-initializer --- By default public attribute reader is defined for every param and option. You can define private or protected reader instead: ```ruby require 'dry-initializer' class User extend Dry::Initializer param :name, reader: :private # the same as adding `private :name` param :email, reader: :protected # the same as adding `protected :email` end ``` To skip any reader, use `reader: false`: ```ruby require 'dry-initializer' class User extend Dry::Initializer param :name param :email, reader: false end user = User.new 'Luke', 'luke@example.com' user.name # => 'Luke' user.email # => #<NoMethodError ...> user.instance_variable_get :@email # => 'luke@example.com' ``` Notice that any other value except for `false`, `:protected` and `:private` provides a public reader. No writers are defined. Define them using pure ruby `attr_writer` when necessary.
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
dry-initializer-3.0.3 | docsite/source/readers.html.md |
dry-initializer-3.0.2 | docsite/source/readers.html.md |