On 2014-09-08 24:13, Andy Parker wrote:
On Fri, Aug 8, 2014 at 3:11 PM, Rahul Gopinath <[email protected]
<mailto:[email protected]>> wrote:
While correcting AndOr, I come across methods calls such as `if
value.is_a? FixNum or value.is_a? Integer`
How should we parenthesize it? is it `(value.is_a? FixNum) ||
(value.is_a? Integer)` or should it be `value.is_a?(FixNum) ||
value.is_a?(Integer)` ?
value.is_a?(FixNum)
Parens around the method arguments are the clearest fix and we should
put them in everywhere IMO :)
+1, except in internal DSL like logic where it reduces readability.
(The question is specific to boolean predicates since they make up
almost all of the method calls that interact with `and` and `or`)
Is there a preference here?
On Fri, Aug 8, 2014 at 9:56 AM, Andy Parker <[email protected]
<mailto:[email protected]>> wrote:
> On Thu, Aug 7, 2014 at 6:09 PM, Rahul Gopinath
<[email protected] <mailto:[email protected]>> wrote:
>>
>> While hacking rubocop, I found that I can get it to autocorrect even
>> more `Style/AndOr` violations if I replace the use of the `not`
>> keyword with `!` first. The Rubocop is able to do the necessary
>> changes automatically. So I think we should turn on the `Style/Not`
>> cop also for our code for three reasons
>> 1. It is essentially free, with rubocop able to supply the
entire set
>> of corrections in its autocorrect mode
>> 2. It is consistent without goal of avoiding keywords with confusing
>> precedence.
>
>
> I actually thought that not would have gone hand in hand with and/or.
> Doesn't it have the same precedence problems as and/or?
>
> Either way, I'm a +1 for adding in this rule too.
>
>>
>> 3. Rubocop autocorrect is the best we can hope for, since it ensures
>> that the AST resulting from the changes are same, and hence the
>> semantics of the new and old fragments are same. Hence we avoid bugs
>> that cold go undetected otherwise.
>> I also propose to turn on the `Style/SpaceAfterNot` which disallows
>> space after the operator `!` so that usage such as `! mymethod` is
>> flagged in favor or `!mymethod`
>>
>
> No space after ! is my preferred style. And I'll just stop any
style wars
> and say it is the preferred style of the codebase (I am
channelling the
> puppet code gods).
>
+1
- henrik
--
Visit my Blog "Puppet on the Edge"
http://puppet-on-the-edge.blogspot.se/
--
You received this message because you are subscribed to the Google Groups "Puppet
Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/puppet-dev/ls5j7a%249u3%241%40ger.gmane.org.
For more options, visit https://groups.google.com/d/optout.