Thanks for sharing but I can't find where exactly it said it was rejected.
Seems as if an incomplete discussion without a conclusion or am I missing
something?

On Wed, Feb 21, 2024 at 12:30 PM sabi...@gmail.com <sabiw...@gmail.com>
wrote:

> For the record this proposal has been rejected once in the past
> https://groups.google.com/g/elixir-lang-core/c/cmirsH_OHKo/m/j2Um5uy-BgAJ
>
> Le mercredi 21 février 2024 à 20:21:56 UTC+9, José Valim a écrit :
>
>> +1 for the proposal, but it has to be implemented more efficiently than
>> what was described here and we also need to add drop!. PRs welcome.
>>
>> On Wed, Feb 21, 2024 at 10:59 AM Artur Plysiuk <ifu...@gmail.com> wrote:
>>
>>> I just came here to add the same proposal.
>>>
>>> четвер, 28 грудня 2023 р. о 11:40:07 UTC+2 DaTrader пише:
>>>
>>>> It's not special at all. Actually it is as generic as the current
>>>> `Keyword.take/2`. You either want the operation to succeed if there aren't
>>>> all keys present or you want it to fail. Those are two equally important
>>>> use cases.
>>>>
>>>> On Thursday, December 28, 2023 at 3:21:50 AM UTC+1 rogers...@gmail.com
>>>> wrote:
>>>>
>>>>> I don't see such special use cases as good candidates to be included
>>>>> in builtins libraries.
>>>>>
>>>>> Em segunda-feira, 18 de dezembro de 2023 às 07:56:11 UTC-3, DaTrader
>>>>> escreveu:
>>>>>
>>>>>> Many times I need to merge a subset of a keyword list or a map into
>>>>>> another keyword list or map while requiring it to fail if not all keys 
>>>>>> are
>>>>>> present.
>>>>>>
>>>>>> For this purpose I have small utility modules called KwUtils and
>>>>>> MapUtils where I have functions like the one below:
>>>>>>
>>>>>> ```
>>>>>>   @doc """
>>>>>>   Takes specified key-value pairs from the keyword list but raises if
>>>>>> any not found.
>>>>>>   """
>>>>>>   @spec take!( keyword(), [ atom()]) :: keyword()
>>>>>>   def take!( kw, keys) do
>>>>>>     taken = Keyword.take( kw, keys)
>>>>>>
>>>>>>     if length( taken) != length( keys) do
>>>>>>       raise "Expected all keys in #{ inspect( keys)} to be present in
>>>>>> #{ inspect( kw)}"
>>>>>>     end
>>>>>>
>>>>>>     taken
>>>>>>   end
>>>>>> ```
>>>>>>
>>>>>> It'd be nice if a corresponding function was part of the `Keyword`
>>>>>> and `Map` modules each.
>>>>>>
>>>>>> --
>>> 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/787ccf87-a103-4271-9d77-2101f1e23247n%40googlegroups.com
>>> <https://groups.google.com/d/msgid/elixir-lang-core/787ccf87-a103-4271-9d77-2101f1e23247n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>> --
> 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/7jRfrcPBK_w/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/f09ac2cf-b38d-4035-871e-372d19c742c3n%40googlegroups.com
> <https://groups.google.com/d/msgid/elixir-lang-core/f09ac2cf-b38d-4035-871e-372d19c742c3n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
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/CAENAfeV2S7k%3D7-1huNMgafXfw9072YpKSyuHMmvKWbS60CjuAQ%40mail.gmail.com.

Reply via email to