Re: [elixir-core:7026] Passing the map to Map.get_lazy's function

2017-03-20 Thread David Long
Hi Ben,
My issue is specific to pipes. What I'm ultimately doing is taking a JSON
object, parsing it with Poison.decode!, And then attempting to pull a
single key out, either overrideoncall or oncall.

On Mon, Mar 20, 2017, 7:49 AM Ben Wilson  wrote:

> Can you elaborate on the code you have in mind? This sounds like a general
> characteristic of pipes and not something specific to Map.get_lazy.
>
>
> On Monday, March 20, 2017 at 6:48:46 AM UTC-4, David Long wrote:
>
> That's not entirely accurate. In my case I was using a series of pipes so
> I did not have access to the map. My case might be very niche, though.
>
> On Mon, Mar 20, 2017, 12:44 AM José Valim 
> wrote:
>
> The reason why get_lazy does not pass the map is because you already have
> the map, since you pass it as first argument.
>
> On Mon, Mar 20, 2017 at 03:44 David Long  wrote:
>
> I was working on some code that would simply test if one key was in a map
> and return it's value, and otherwise return a different key's value.
>
> The map had a form like the following:
>
> %{
>   oncall: "dlong",
>   overrideoncall: "jsmith",
>   ...
> }
>
>
> If there was someone overriding on call then their name would be in the `
> overrideoncall` key, otherwise the key would not be in the map.
>
> I think this could be a nice use for `Map.get_lazy`, if the function had
> the original map passed in, allowing me to write the code as follows:
>
> Map.get_lazy(on_call_group, :overrideoncall, &(&1[:oncall]))
>
>
> Before I wrote a pull request, I thought I'd see if this is a feature that
> makes sense to others?
>
> --
>
> You received this message because you are subscribed to the Google Groups
> "elixir-lang-core" group.
>
> To unsubscribe from this group and stop receiving emails from it, send an
> email to elixir-lang-co...@googlegroups.com.
>
>
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/elixir-lang-core/719dc4fc-ae23-4437-b059-d91356e9b43b%40googlegroups.com
> 
> .
> For more options, visit https://groups.google.com/d/optout.
>
> --
>
>
> *José Valim*
> www.plataformatec.com.br
> Skype: jv.ptec
> Founder and Director of R
>
> --
> You received this message because you are subscribed to a topic in the
> Google Groups "elixir-lang-core" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/elixir-lang-core/JuAZnOXpo5Q/unsubscribe
> .
>
> To unsubscribe from this group and all its topics, send an email to
> elixir-lang-co...@googlegroups.com.
>
>
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/elixir-lang-core/CAGnRm4J7dZWROSBnBU7Ayn%3DhQGphp_ciFZTRf83XscDTQQ2z3w%40mail.gmail.com
> 
> .
> For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to a topic in the
> Google Groups "elixir-lang-core" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/elixir-lang-core/JuAZnOXpo5Q/unsubscribe
> .
> To unsubscribe from this group and all its topics, send an email to
> elixir-lang-core+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/elixir-lang-core/9f0334d6-c484-454e-8fe7-d236e2804f45%40googlegroups.com
> 
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"elixir-lang-core" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to elixir-lang-core+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elixir-lang-core/CAPkhLiTqYyUahLNn%2BwGcO-bLyJHHQvapoHfX1MWwMUDCx9%2BsaQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [elixir-core:7026] Passing the map to Map.get_lazy's function

2017-03-20 Thread Ben Wilson
Can you elaborate on the code you have in mind? This sounds like a general 
characteristic of pipes and not something specific to Map.get_lazy.

On Monday, March 20, 2017 at 6:48:46 AM UTC-4, David Long wrote:
>
> That's not entirely accurate. In my case I was using a series of pipes so 
> I did not have access to the map. My case might be very niche, though. 
>
> On Mon, Mar 20, 2017, 12:44 AM José Valim  > wrote:
>
>> The reason why get_lazy does not pass the map is because you already have 
>> the map, since you pass it as first argument.
>>
>> On Mon, Mar 20, 2017 at 03:44 David Long > > wrote:
>>
>>> I was working on some code that would simply test if one key was in a 
>>> map and return it's value, and otherwise return a different key's value.
>>>
>>> The map had a form like the following:
>>>
>>> %{
>>>   oncall: "dlong",
>>>   overrideoncall: "jsmith",
>>>   ...
>>> }
>>>
>>>
>>> If there was someone overriding on call then their name would be in the `
>>> overrideoncall` key, otherwise the key would not be in the map.
>>>
>>> I think this could be a nice use for `Map.get_lazy`, if the function had 
>>> the original map passed in, allowing me to write the code as follows:
>>>
>>> Map.get_lazy(on_call_group, :overrideoncall, &(&1[:oncall]))
>>>
>>>
>>> Before I wrote a pull request, I thought I'd see if this is a feature 
>>> that makes sense to others?
>>>
>>> -- 
>>>
>> You received this message because you are subscribed to the Google Groups 
>>> "elixir-lang-core" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to elixir-lang-co...@googlegroups.com .
>>
>>
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/elixir-lang-core/719dc4fc-ae23-4437-b059-d91356e9b43b%40googlegroups.com
>>>  
>>> 
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>> -- 
>>
>>
>> *José Valim*
>> www.plataformatec.com.br
>> Skype: jv.ptec
>> Founder and Director of R
>>
>> -- 
>> You received this message because you are subscribed to a topic in the 
>> Google Groups "elixir-lang-core" group.
>> To unsubscribe from this topic, visit 
>> https://groups.google.com/d/topic/elixir-lang-core/JuAZnOXpo5Q/unsubscribe
>> .
>> To unsubscribe from this group and all its topics, send an email to 
>> elixir-lang-co...@googlegroups.com .
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/elixir-lang-core/CAGnRm4J7dZWROSBnBU7Ayn%3DhQGphp_ciFZTRf83XscDTQQ2z3w%40mail.gmail.com
>>  
>> 
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"elixir-lang-core" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to elixir-lang-core+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elixir-lang-core/9f0334d6-c484-454e-8fe7-d236e2804f45%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.