groovy-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From John Wagenleitner <john.wagenleit...@gmail.com>
Subject Re: foo() || return false ?
Date Tue, 18 Jul 2017 14:18:17 GMT
How about

if (!doSomething()) return false


On Tue, Jul 18, 2017 at 7:00 AM, Guy Matz <guymatz@gmail.com> wrote:

> Right!  This is what I'm trying to do, but in a more concise way . . .
>  any thoughts anyone?
>
> On Mon, Jul 17, 2017 at 8:43 PM, J. David Beutel <list@getsu.com> wrote:
>
>> I guess OP wants to do:
>>
>> if (!doSomething()) {
>>     return false
>> }
>>
>> I don't know any groovy way to do that, though.
>>
>>
>> On 2017-07-17 15:21 , John Wagenleitner wrote:
>>
>> Since the `||` operator expects an expression a return statement is not
>> valid there.  If the goal is to call the method `doSomething()` and then
>> return false, then both can be put on separate lines or a semicolon can be
>> used to separate the statements to keep it a one-liner, e.g.,
>> `doSomething(); return false`.
>>
>> On Mon, Jul 17, 2017 at 5:24 PM, Guy Matz <guymatz@gmail.com> wrote:
>>
>>> Thanks so much for the reply!  I'm not trying to do this, though: ||
>>> false
>>>
>>> I'm trying to do this: || return false
>>>
>>> Is there a more groovy way?
>>>
>>> Thanks!!
>>>
>>>
>>> On Mon, Jul 17, 2017 at 5:06 PM, John Wagenleitner <
>>> john.wagenleitner@gmail.com> wrote:
>>>
>>>> That is not a valid start of an expression which is expected for the
>>>> binary expression (expr || expr) so that's why it wont compile. I am not
>>>> familiar with Scriptler and it is hard to tell without some more context,
>>>> but how about just:
>>>>
>>>> doSomething()
>>>>
>>>> You can simplify by dropping the `|| false`.  If that's the last line
>>>> in a boolean returning method/context it will return true if doSomething()
>>>> returns a non-null/non-zero/non-false value, else false.  Otherwise you
>>>> could coerce the value to a boolean with:
>>>>
>>>> doSomething() as boolean
>>>>
>>>>
>>>> On Mon, Jul 17, 2017 at 1:18 PM, Guy Matz <guymatz@gmail.com> wrote:
>>>>
>>>>> Hello!
>>>>> I'm trying to do the following in scriptler (Jenkins), but I can't get
>>>>> this to work:
>>>>> doSomething() || return false
>>>>>
>>>>> This fails in scripler with:
>>>>>
>>>>> Execution of script [promoteBuild.groovy] failed - org.codehaus.groovy.control.MultipleCompilationErrorsException:
startup failed:
>>>>> Script1.groovy: 51: unexpected token: return @ line 51, column 85.
>>>>>    doSomething() || return fal
>>>>>
>>>>> Anyone know why this seemingly valid groovy does not work in scriptler?
>>>>>
>>>>> Thanks!
>>>>>
>>>>> P.S. - I asked the jenkins community but no one responded
>>>>>
>>>>>
>>>>
>>>
>>
>>
>

Mime
View raw message