Sha256: de66db1a5f8ca048d99e7648ac1a67ed7c461f3a0e3e8c5677ee6a69b5bb1f5f

Contents?: true

Size: 658 Bytes

Versions: 55

Compression:

Stored size: 658 Bytes

Contents

# frozen_string_literal: true

require_relative 'base'

module RubyTerraform
  module Options
    module Values
      class Boolean < Base
        def resolve
          return nil if @value.nil?
          return @value if a_boolean?(@value)
          return true if true_as_string?(@value)

          false
        end

        def render
          resolve.nil? ? nil : resolve.to_s
        end

        private

        def a_boolean?(value)
          value.is_a?(TrueClass) || value.is_a?(FalseClass)
        end

        def true_as_string?(value)
          value.respond_to?(:downcase) && value.downcase == 'true'
        end
      end
    end
  end
end

Version data entries

55 entries across 55 versions & 1 rubygems

Version Path
ruby-terraform-1.7.0.pre.18 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.17 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.16 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.15 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.14 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.13 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.12 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.11 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.10 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.9 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.8 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.7 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.6 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.5 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.4 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.3 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.2 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.7.0.pre.1 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.6.0 lib/ruby_terraform/options/values/boolean.rb
ruby-terraform-1.6.0.pre.6 lib/ruby_terraform/options/values/boolean.rb