Sha256: 1b6fb39e0aba903f3413d1756be02cfa110b1076f5db084238761b0b67043808
Contents?: true
Size: 1.31 KB
Versions: 4
Compression:
Stored size: 1.31 KB
Contents
module Virtus class Attribute # Bolean attribute allows true or false values to be set # Additionally it adds boolean reader method, like "admin?" # # @example # class Post # include Virtus # # attribute :published, Boolean # end # # post = Post.new(:published => false) # post.published? # => false # class Boolean < Object primitive TrueClass coercion_method :to_boolean # Returns if the given value is either true or false # # @example # boolean = Virtus::Attribute::Boolean.new(:bool) # boolean.value_coerced?(true) # => true # boolean.value_coerced?(false) # => true # boolean.value_coerced?(1) # => false # boolean.value_coerced?('true') # => false # # @return [Boolean] # # @api public def value_coerced?(value) value.equal?(true) or value.equal?(false) end # Creates an attribute reader method as a query # # @param [Module] mod # # @return [self] # # @api private def define_reader_method(mod) super mod.define_reader_method(self, "#{name}?", @reader_visibility) self end end # class Boolean end # class Attribute end # module Virtus
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
virtus-0.5.1 | lib/virtus/attribute/boolean.rb |
virtus-0.5.0 | lib/virtus/attribute/boolean.rb |
virtus-0.4.2 | lib/virtus/attribute/boolean.rb |
virtus-0.4.1 | lib/virtus/attribute/boolean.rb |