Sha256: f1fd78395932a6008cd9bf156fbfbf3772dd02c67d31cb63b1bacf5b790ef932
Contents?: true
Size: 928 Bytes
Versions: 2
Compression:
Stored size: 928 Bytes
Contents
# # Checks the reader privacy # module Dry::Initializer::Dispatchers::PrepareReader extend self def call(target: nil, reader: :public, **options) reader = case reader.to_s when 'false', '' then nil when 'true' then :public when 'public', 'private', 'protected' then reader.to_sym else invalid_reader!(target, reader) end { target: target, reader: reader, **options } end private def invalid_reader!(target, _reader) raise ArgumentError, <<~MESSAGE Invalid setting for the ##{target} reader's privacy. Use the one of the following values for the `:reader` option: - 'public' (true) for the public reader (default) - 'private' for the private reader - 'protected' for the protected reader - nil (false) if no reader should be defined MESSAGE end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
dry-initializer-3.0.4 | lib/dry/initializer/dispatchers/prepare_reader.rb |
dry-initializer-3.0.3 | lib/dry/initializer/dispatchers/prepare_reader.rb |