{"id":19590605,"url":"https://github.com/mudssrali/elixir-enum-cheatsheet","last_synced_at":"2025-02-26T13:42:11.922Z","repository":{"id":44815326,"uuid":"356935603","full_name":"mudssrali/elixir-enum-cheatsheet","owner":"mudssrali","description":"a simple elixir enum cheatsheet with emoji","archived":false,"fork":false,"pushed_at":"2022-01-23T11:42:53.000Z","size":10,"stargazers_count":0,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-09T06:35:01.931Z","etag":null,"topics":["cheatsheet","education","elixir","elixir-lang","enum","learning-elixir"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mudssrali.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-04-11T17:36:19.000Z","updated_at":"2022-01-22T19:00:00.000Z","dependencies_parsed_at":"2022-08-30T23:11:59.019Z","dependency_job_id":null,"html_url":"https://github.com/mudssrali/elixir-enum-cheatsheet","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mudssrali%2Felixir-enum-cheatsheet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mudssrali%2Felixir-enum-cheatsheet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mudssrali%2Felixir-enum-cheatsheet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mudssrali%2Felixir-enum-cheatsheet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mudssrali","download_url":"https://codeload.github.com/mudssrali/elixir-enum-cheatsheet/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240864718,"owners_count":19870000,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cheatsheet","education","elixir","elixir-lang","enum","learning-elixir"],"created_at":"2024-11-11T08:25:39.697Z","updated_at":"2025-02-26T13:42:11.864Z","avatar_url":"https://github.com/mudssrali.png","language":null,"readme":"# Elixir Enum Cheatsheet\n\na simple elixir enum cheatsheet\n\n## Functions\n\n- `all?`\n\n  ```ex\n\n  [👋🏼 🤚🏼 🖐🏼 ✋🏼 🖖🏼 👌🏼] |\u003e Enum.all?( fn x -\u003e x == 👌🏼 end) ---\u003e false\n\n  ```\n\n- `any?`\n\n  ```ex\n\n  [👋🏼 🤚🏼 🖐🏼 ✋🏼 🖖🏼 👌🏼] |\u003e Enum.any?( fn x -\u003e x == 👌🏼 end) ---\u003e true\n\n  ```\n\n- `at`\n\n  ```ex\n\n  [😀 😃 😄 😁 😆 😅] |\u003e Enum.at(5) ---\u003e 😅\n\n  ```\n\n- `chunk_by`\n\n  ```ex\n\n   [😀 😃 😁 😆 😅] |\u003e Enum.chunk_by(fn x -\u003e x == 😁) ---\u003e [[😀 😃] [😁]  [😆 😅]]\n\n  ```\n\n- `chunk_every`\n\n  ```ex\n\n  [👏 🙌 👐 🤲 🤝] |\u003e Enum.chunk_every(2) ---\u003e [[👏 🙌] [👐 🤲] [🤝]]\n\n  ```\n\n- `concat`\n\n  ```ex\n\n  [🐶 🐱 🐭] |\u003e Enum.concat([🐹 🐰 🦊]) ---\u003e [🐶 🐱 🐭 🐹 🐰 🦊]\n\n  ```\n\n- `count`\n\n  ```ex\n\n  [🐶 🐱 🐭 🐹 🐰 🦊] |\u003e Enum.count() ---\u003e 6\n\n  ```\n\n- `dedup` - remove consecutive duplicates\n\n  ```ex\n\n  [🐹 🐰 🦊 🦊 🐹 🐰] |\u003e Enum.dedup() ---\u003e [🐹 🐰 🦊 🐹 🐰]\n\n  ```\n\n- `drop`\n\n  ```ex\n\n  [👋🏼 🤚🏼 🖐🏼 🦊 🐹 🐰] |\u003e Enum.drop(3) ---\u003e [🦊 🐹 🐰]\n\n  ```\n\n- `drop_every`\n\n  ```ex\n\n  1..10 |\u003e Enum.drop_every(2) ---\u003e [2, 4, 6, 8, 10]\n  1..10 |\u003e Enum.drop_every(1) ---\u003e []\n  1..10 |\u003e Enum.drop_every(0) ---\u003e [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]\n\n  ```\n\n- `drop_while`\n\n  ```ex\n\n  1..10 |\u003e Enum.drop_while(fn x -\u003e x \u003c 5 end) ---\u003e [6, 7, 8, 9, 10]\n\n  ```\n\n- `each`\n\n  ```ex\n\n  1..2 |\u003e Enum.each(fn x -\u003e IO.puts(x) end) ---\u003e 1 \\n 2\n\n  ```\n\n- `empty?`\n\n  ```ex\n\n  [] |\u003e Enum.empty?() ---\u003e true\n\n  ```\n\n- `fetch`\n\n  ```ex\n\n  [👋🏼 🤚🏼 🖐🏼 🦊 🐹 🐰] |\u003e Enum.fetch(3) ---\u003e {:ok, 🦊}\n\n  ```\n\n- `filter`\n\n  ```ex\n\n  1..10 |\u003e Enum.filter(fn x -\u003e rem(x, 2) == 0 end) --\u003e [2, 4, 6, 8, 10]\n\n  ```\n\n- `find`\n\n  ```ex\n\n   [🐹 🐰 🦊 🦊 🐹 🐰] |\u003e Enum.find(fn x -\u003e x == 🦊 end) ---\u003e 🦊\n\n  ```\n\n- `find_index`\n\n  ```ex\n\n   [🐹 🐰 🦊 🦊 🐹 🐰] |\u003e Enum.find(fn x -\u003e x == 🦊 end) ---\u003e 2\n\n  ```\n\n- `flat_map`\n\n  ```ex\n\n  [\"🐹\", \"🦊\"] |\u003e Enum.flat_map(fn x -\u003e [x, x] end) ---\u003e [[\"🐹\", \"🐹\"], [\"🦊\", \"🦊\"]]\n\n  ```\n\n\u003c!-- - `flat_map_reduce`\n    ```ex\n\n    [] |\u003e Enum.flat_map_reduce()\n\n    ``` --\u003e\n\n- `frequencies`\n\n  ```ex\n\n  [\"🐹\", \"🐰\", \"🦊\", \"🦊\", \"🐹\"] |\u003e Enum.frequencies() ---\u003e %{\"🐰\" =\u003e 1, \"🐹\" =\u003e 2, \"🦊\" =\u003e 2}\n\n  ```\n\n- `frequencies_by`\n\n  ```ex\n  [\"🐹\", \"🐰\", \"🦊\", \"🦊\", \"🐹\"] |\u003e Enum.frequencies_by(fn x -\u003e x == \"🦊\" end) ---\u003e %{false: 3, true: 2}\n\n  ```\n\n- `group_by`\n\n  ```ex\n   [\"🐹\", \"🐰\", \"🦊\", \"🦊\", \"🐹\"] |\u003e Enum.group_by(fn x -\u003e x end) ---\u003e %{\"🐹\" =\u003e [\"🐹\",\"🐹\"], \"🐰\" =\u003e [\"🐰\"], \"🦊\" =\u003e [\"🦊\",\"🦊\"]}\n  ```\n\n  ```ex\n   [\"🐹\", \"🐰\", \"🦊\", \"🦊\", \"🐹\"] |\u003e Enum.group_by(fn x -\u003e x end, fn x -\u003e name_of(x) end) ---\u003e %{\"🐹\" =\u003e [\"bear\",\"bear\"], \"🐰\" =\u003e [\"rabbit\"], \"🦊\" =\u003e [\"fox\",\"fox\"]}\n\n  ```\n\n- `intersperse`\n\n  ```ex\n\n  [\"🐹\", \"🦊\", \"🦊\", \"🐹\"] |\u003e Enum.intersperse(\"🐰\") ---\u003e  [\"🐹\", \"🐰\", \"🦊\", \"🐰\", \"🦊\", \"🐰\", \"🐹\"]\n\n  [\"🐹\"] |\u003e Enum.intersperse(\"🐰\") ---\u003e  [\"🐹\"]\n\n  [] |\u003e Enum.intersperse(\"🐰\") ---\u003e  []\n\n  ```\n\n- `into`\n\n  ```ex\n\n   [\"🐹\", \"🦊\", \"🦊\", \"🐹\"] |\u003e Enum.into([]) ---\u003e  [\"🐹\", \"🦊\", \"🦊\", \"🐹\"]\n\n   %{bear: \"🐹\", fox: \"🦊\"} |\u003e Enum.into([]) ---\u003e [bear: \"🐹\", fox: \"🦊\"]\n\n   %{bear: \"🐰\", fox: \"🦊\", bear: \"🐹\"} |\u003e Enum.into([]) ---\u003e [bear: \"🐹\", fox: \"🦊\"]\n\n  ```\n\n  ```ex\n\n   [\"🐹\", \"🦊\", \"🦊\", \"🐹\"] |\u003e Enum.into([], fn x -\u003e name_of(x) end) ---\u003e  [\"bear\", \"fox\", \"fox\", \"bear\"]\n\n  ```\n\n- `join`\n\n  ```ex\n\n   [\"🐹\", \"🦊\", \"🦊\", \"🐹\"] |\u003e Enum.join(\"🐰\") ---\u003e \"🐹🐰🦊🐰🦊🐰🐹\"\n\n  ```\n\n- `map`\n\n  ```ex\n\n  [\"🐹\", \"🦊\", \"🦊\", \"🐹\"] |\u003e Enum.map(fn x -\u003e \"#{x}🐰\" end) ---\u003e [\"🐹🐰\", \"🦊🐰\", \"🦊🐰\", \"🐹🐰\"]\n\n  ```\n\n- `map_every`\n\n  ```ex\n\n  [\"🐹\", \"🦊\", \"🦊\", \"🐹\"] |\u003e Enum.map_every(2, fn x -\u003e \"#{x}🐰\" end) ---\u003e [\"🐹\", \"🦊🐰\", \"🦊\", \"🐹🐰\"]\n\n  ```\n\n- `map_intersperse`\n\n  ```ex\n\n   [\"🐹\", \"🦊\", \"🦊\", \"🐹\"] |\u003e Enum.map_intersperse(\"🐶\", fn x -\u003e \"#{x}🐰\" end) ---\u003e [\"🐹🐰\", \"🐶🐰\", \"🦊🐰\", \"🐶🐰\", \"🦊🐰\", \"🐶🐰\", \"🐹🐰\"]\n\n  ```\n\n- `map_join`\n\n  ```ex\n\n   [\"🐹\", \"🦊\", \"🦊\", \"🐹\"] |\u003e Enum.map_join(\"🐶\", fn x -\u003e \"#{x}🐰\" end) ---\u003e \"🐹🐰🐶🦊🐰🐶🦊🐰🐶🐹🐰\"\n\n\n  ```\n\n- `map_reduce`\n\n  ```ex\n\n  [\"🐹\", \"🦊\", \"🦊\", \"🐰\"] |\u003e Enum.map_reduce(\"🐶\", fn x, acc -\u003e {\"#{x}🐰\", \"#{x}#{acc}\"} end) ---\u003e {[\"🐹🐰\", \"🦊🐰\", \"🦊🐰\", \"🐰🐰\"], \"🐰🦊🦊🐹🐶\" }\n\n  ```\n\n- `max`\n\n  ```ex\n\n  [1, 3, 6, 9] |\u003e Enum.max() ---\u003e 9\n\n  ```\n\n- `max_by`\n\n  ```ex\n\n  [\"🐹\", \"🦊\", \"🦊\", \"🐰\"] |\u003e Enum.max_by(fn x -\u003e name_of(x) end) ---\u003e \"🐰\"\n\n  ```\n\n- `member?`\n\n  ```ex\n\n   [\"🐹\", \"🦊\", \"🦊\", \"🐰\"] |\u003e Enum.member?(\"🐰\") ---\u003e true\n\n\n   [\"🐹\", \"🦊\", \"🦊\" |\u003e Enum.member?(\"🐰\") ---\u003e false\n\n  ```\n\n- `min`\n\n  ```ex\n\n  [1, 3, 6, 9] |\u003e Enum.min() ---\u003e 1\n\n  ```\n\n- `min_by`\n\n  ```ex\n\n  [\"🐹\", \"🦊\", \"🦊\", \"🐰\"] |\u003e Enum.min_by(fn x -\u003e name_of(x) end) ---\u003e \"🐹\"\n\n  ```\n\n- `min_max`\n\n  ```ex\n\n  [1, 2, 3, 4, 5, 9] |\u003e Enum.min_max() ---\u003e {1, 9}\n\n  ```\n\n- `min_max_by`\n\n  ```ex\n\n  [\"🐹\", \"🦊\", \"🦊\", \"🐰\"] |\u003e Enum.min_max_by(fn x -\u003e name_of(x) end) ---\u003e {\"🐹\", \"🐰\"}\n\n  ```\n\n- `random`\n\n  ```ex\n\n  [\"🐹\", \"🦊\", \"🦊\", \"🐰\"] |\u003e Enum.random() ----\u003e \"🦊\"\n\n  ```\n\n- `reduce`\n\n  ```ex\n\n  1..10 |\u003e Enum.reduce(0, fn (x, agg) -\u003e agg + x end) ----\u003e 55 \n\n  ```\n\n- `reduce_while`\n\n  ```ex\n\n  [] |\u003e Enum.reduce_while()\n\n  ```\n\n- `reject`\n\n  ```ex\n\n  [] |\u003e Enum.reject()\n\n  ```\n\n- `reverse`\n\n  ```ex\n\n  [\"🐹\", \"🦊\", \"🐰\"] |\u003e Enum.reverse() -----\u003e [\"🐰\", \"🦊\",\"🐹\"]\n\n  ```\n\n- `reverse_slice`\n\n  ```ex\n\n  [] |\u003e Enum.reverse_slice()\n\n  ```\n\n- `scan`\n\n  ```ex\n\n  [] |\u003e Enum.scan()\n\n  ```\n\n- `shuffle`\n\n  ```ex\n\n  [\"🐹\", \"🦊\", \"🐰\"] |\u003e Enum.shuffle() ------\u003e [\"🐹\", \"🐰\", \"🦊\"]\n\n  ```\n\n- `slice`\n\n  ```ex\n\n  [\"🐹\", \"🦊\", \"🐰\"] |\u003e Enum.slice(1,2) -----\u003e [\"🦊\", \"🐰\"]\n\n  ```\n\n- `sort`\n\n  ```ex\n\n  [45, 36, 78, 1, 4] |\u003e Enum.sort() -------\u003e [1, 4, 36, 45, 78]\n\n  ```\n\n- `sort_by`\n\n  ```ex\n\n  [] |\u003e Enum.sort_by()\n\n  ```\n\n- `split`\n\n  ```ex\n\n  [\"🐹\", \"🦊\", \"🐰\"] |\u003e Enum.split(2) -----\u003e {[\"🐹\", \"🦊\"], [\"🐰\"]}\n\n  ```\n\n- `split_while`\n\n  ```ex\n\n  [] |\u003e Enum.split_while()\n\n  ```\n\n- `split_with`\n\n  ```ex\n\n  [] |\u003e Enum.split_with()\n\n  ```\n\n- `sum`\n\n  ```ex\n\n  [1, 2, 3, 4, 5] |\u003e Enum.sum() -----\u003e 15\n\n  ```\n\n  - `product`\n\n  ```ex\n\n  [1, 2, 3, 4, 5] |\u003e Enum.product() -----\u003e 120\n\n  ```\n\n- `take`\n\n  ```ex\n\n  [] |\u003e Enum.take()\n\n  ```\n\n- `take_every`\n\n  ```ex\n\n  [] |\u003e Enum.take_every()\n\n  ```\n\n- `take_random`\n\n  ```ex\n\n  [] |\u003e Enum.take_random()\n\n  ```\n\n- `take_while`\n\n  ```ex\n\n  [] |\u003e Enum.take_while()\n\n  ```\n\n- `to_list`\n\n  ```ex\n\n  [] |\u003e Enum.to_list()\n\n  ```\n\n- `uniq`\n\n  ```ex\n\n  [\"🐹\", \"🦊\", \"🦊\",\"🐰\", \"🐰\"] |\u003e Enum.uniq() -----\u003e [\"🐹\", \"🦊\", \"🐰\"]\n\n  ```\n\n- `uniq_by`\n\n  ```ex\n\n  [] |\u003e Enum.uniq_by()\n\n  ```\n\n- `unzip`\n\n  ```ex\n\n  [] |\u003e Enum.unzip()\n\n  ```\n\n- `with_index`\n\n  ```ex\n\n  [\"🐹\", \"🦊\", \"🐰\"] |\u003e Enum.with_index() -----\u003e [{\"🐹\", 0}, {\"🦊\", 1}, {\"🐰\", 2}]\n\n  ```\n\n- `zip`\n\n  ```ex\n\n  [] |\u003e Enum.zip()\n\n  ```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmudssrali%2Felixir-enum-cheatsheet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmudssrali%2Felixir-enum-cheatsheet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmudssrali%2Felixir-enum-cheatsheet/lists"}