Sha256: 48ca6f8e99b71d81fe8dea87b4d7594ca09d392742cba28c2e4c13440910ffc1
Contents?: true
Size: 607 Bytes
Versions: 22
Compression:
Stored size: 607 Bytes
Contents
# frozen_string_literal: true module Marameters # Computes a method parameter's default value. class Defaulter PASSTHROUGH = "*" def self.call(...) = new(...).call def initialize value, passthrough: PASSTHROUGH @value = value @passthrough = passthrough end def call case value when nil then "nil" when /\A#{Regexp.escape passthrough}/ then value.delete_prefix passthrough when String then value.dump when Symbol then value.inspect else value end end private attr_reader :value, :passthrough end end
Version data entries
22 entries across 22 versions & 1 rubygems