I don't see how that works in my case, maybe i'm missing something.
I will clarify:
I define a variable in web to represent the range: 14502..14520
The web converts this to a string, and passes it into my code.
My code then has to receive this string, and then construct a list from it.
I could do:
String rangeString = passedInVar
(String min, String max) = rangeString.tokenize("..")
Range range = min..max
But i was hoping for a universal "caster" loop which can detect and cast
the common types from strings:
Integers, lists, ranges, maps, booleans..
12345
["this", "is", "Sample", "List"]
14502..14520
["key":"value","for":"maps"]
true
I think eval works for all but ranges.
Gerald R. Wiltse
[email protected]
On Wed, Apr 20, 2016 at 1:15 AM, Guillaume Laforge <[email protected]>
wrote:
> Hi,
>
> You can just replace the bounds with variables.
>
> def a = 1
> def b = 10
> def r = a..b
>
> Isn't that what you're looking for?
>
> Guillaume
>
>
> Le mercredi 20 avril 2016, Gerald Wiltse <[email protected]> a écrit :
>
>> I can find no examples of different ways to create a range. There's a
>> plethora of examples on what you can do when you start by creating a range
>> like so: "1..10"
>>
>> But, how does one create a range when the min and max values are stored
>> in variables? There's no range constructor. I see that it's a form of a
>> list, but I see no helper methods for dynamically creating ranges given a
>> min and max value.
>>
>> I even tried to get really fancy, but this evaluates to a string.
>>
>> def v = "10..15"
>> assert Eval.x(v, "return x").getClass().name ==
>> "java.lang.String"
>>
>> My use case is this. I populate a bunch of form fields with variable
>> definitions... but they all get passed to my code as strings. But I want to
>> pass port ranges and lists and maps. So, the Eval() method is exactly what
>> I needed.. it just isn't working for ranges.
>>
>> Regards,
>> Jerry
>>
>>
>> Gerald R. Wiltse
>> [email protected]
>>
>>
>
> --
> Guillaume Laforge
> Apache Groovy committer & PMC Vice-President
> Product Ninja & Advocate at Restlet <http://restlet.com>
>
> Blog: http://glaforge.appspot.com/
> Social: @glaforge <http://twitter.com/glaforge> / Google+
> <https://plus.google.com/u/0/114130972232398734985/posts>
>
>