Elixir語言中 Keyword.get_and_update!
相關用法介紹如下。
用法:
get_and_update!(keywords, key, fun)
@spec get_and_update!(
t(),
key(),
(value() | nil -> {current_value, new_value :: value()} | :pop)
) ::
{current_value, new_keywords :: t()}
when current_value: value()
獲取 key
下的值並更新它。如果沒有 key
則引發。
fun
參數接收 key
下的值,並且必須返回一個二元素元組:當前值(檢索到的值,可以在返回之前對其進行操作)和要存儲在 key
下的新值。
返回一個元組,其中包含 fun
返回的當前值和 key
下具有更新值的新關鍵字列表。
例子
iex> Keyword.get_and_update!([a: 1], :a, fn current_value ->
...> {current_value, "new value!"}
...> end)
{1, [a: "new value!"]}
iex> Keyword.get_and_update!([a: 1], :b, fn current_value ->
...> {current_value, "new value!"}
...> end)
** (KeyError) key :b not found in: [a: 1]
iex> Keyword.get_and_update!([a: 1], :a, fn _ ->
...> :pop
...> end)
{1, []}
相關用法
- Elixir Keyword.get_and_update用法及代碼示例
- Elixir Keyword.get_values用法及代碼示例
- Elixir Keyword.get_lazy用法及代碼示例
- Elixir Keyword.get用法及代碼示例
- Elixir Keyword.validate用法及代碼示例
- Elixir Keyword.pop_first用法及代碼示例
- Elixir Keyword.replace用法及代碼示例
- Elixir Keyword.fetch用法及代碼示例
- Elixir Keyword.split用法及代碼示例
- Elixir Keyword.put_new用法及代碼示例
- Elixir Keyword.pop_values用法及代碼示例
- Elixir Keyword.drop用法及代碼示例
- Elixir Keyword.keyword?用法及代碼示例
- Elixir Keyword.pop_lazy用法及代碼示例
- Elixir Keyword.to_list用法及代碼示例
- Elixir Keyword.merge用法及代碼示例
- Elixir Keyword.put用法及代碼示例
- Elixir Keyword.values用法及代碼示例
- Elixir Keyword.filter用法及代碼示例
- Elixir Keyword.has_key?用法及代碼示例
- Elixir Keyword.replace!用法及代碼示例
- Elixir Keyword.delete用法及代碼示例
- Elixir Keyword.take用法及代碼示例
- Elixir Keyword.delete_first用法及代碼示例
- Elixir Keyword.fetch!用法及代碼示例
注:本文由純淨天空篩選整理自elixir-lang.org大神的英文原創作品 Keyword.get_and_update!(keywords, key, fun)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。