Sha256: f23c7a7e897e5a952354d6b69fd72466f5c8b7963616ac8e1888ac7e96b72429

Contents?: true

Size: 748 Bytes

Versions: 12

Compression:

Stored size: 748 Bytes

Contents

module Libuv
    module Assertions
        MSG_NO_PROC = 'no block given'.freeze

        def assert_block(proc, msg = MSG_NO_PROC)
            raise ArgumentError, msg, caller unless proc.respond_to? :call
        end

        def assert_type(type, actual, msg = nil)
            if not actual.kind_of?(type)
                msg ||= "value #{actual.inspect} is not a valid #{type}"
                raise ArgumentError, msg, caller
            end
        end

        def assert_boolean(actual, msg = nil)
            if not (actual.kind_of?(TrueClass) || actual.kind_of?(FalseClass))
                msg ||= "value #{actual.inspect} is not a valid Boolean"
                raise ArgumentError, msg, caller
            end
        end
    end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
libuv-2.0.12 lib/libuv/mixins/assertions.rb
libuv-2.0.11 lib/libuv/mixins/assertions.rb
libuv-2.0.10 lib/libuv/mixins/assertions.rb
libuv-2.0.9 lib/libuv/mixins/assertions.rb
libuv-2.0.8 lib/libuv/mixins/assertions.rb
libuv-2.0.6 lib/libuv/mixins/assertions.rb
libuv-2.0.5 lib/libuv/mixins/assertions.rb
libuv-2.0.4 lib/libuv/mixins/assertions.rb
libuv-2.0.3 lib/libuv/mixins/assertions.rb
libuv-2.0.2 lib/libuv/mixins/assertions.rb
libuv-2.0.1 lib/libuv/mixins/assertions.rb
libuv-2.0.0 lib/libuv/mixins/assertions.rb