Sha256: 313fbf931645956eed7da03a1a93d2c03f3e689cccf3b4bfcf3baf96b174102e
Contents?: true
Size: 1.17 KB
Versions: 1
Compression:
Stored size: 1.17 KB
Contents
# +nil [![[version]](https://badge.fury.io/rb/null_plus.svg)](http://badge.fury.io/rb/null_plus) [![[travis]](https://travis-ci.org/janlelis/null_plus.png)](https://travis-ci.org/janlelis/null_plus) This gem redefines Ruby's unary `+` operator to turn null objects into nil. By default, the unary `+` operator is not used in Ruby, so overloading it is not so dangerous as it might have sound to you when you read it. Every object that returns [true for `null?`](https://github.com/janlelis/null_question) is considered a null object. ## Setup Add to your **Gemfile**: ```ruby gem "null_plus" ``` ## Usage ```ruby class NullObject def null? true end end null = NullObject.new +nil #=> nil +null #=> nil +"some object" #=> "some object" # Useful for settings defaults or checking conditions: if +null fail # will not run end value = +null || 42 #=> 42 ``` ### Hint Pay attention to proper operator precedence when chaining method class: ```ruby class NullObject def null? true end end null = NullObject.new +null.class #=> NullObject (+null).class #=> NilClass ``` ## J-_-L Copyright (C) 2015 Jan Lelis <http://janlelis.com>. Released under the MIT license.
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
null_plus-1.0.0 | README.md |