Method: UltraSettings::Field#initialize
- Defined in:
- lib/ultra_settings/field.rb
#initialize(name:, type: :string, description: nil, default: nil, default_if: nil, env_var: nil, runtime_setting: nil, yaml_key: nil, static: false, secret: false) ⇒ Field
Returns a new instance of Field.
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/ultra_settings/field.rb', line 25 def initialize( name:, type: :string, description: nil, default: nil, default_if: nil, env_var: nil, runtime_setting: nil, yaml_key: nil, static: false, secret: false ) @name = name.to_s.freeze @type = type.to_sym @description = description&.to_s&.freeze @default = Coerce.coerce_value(default, @type).freeze @default_if = default_if @env_var = env_var&.to_s&.freeze @runtime_setting = runtime_setting&.to_s&.freeze @yaml_key = yaml_key&.to_s&.freeze @static = !!static @secret = (secret.respond_to?(:call) ? secret : !!secret) end |