Elixir Language
Секреты и уловки
Поиск…
Вступление
Elixir Дополнительные советы и рекомендации, которые экономят время во время кодирования.
Создание пользовательских символов и документирование
Каждый x sigil вызывает соответствующее определение sigil_x
Определение пользовательских символов
defmodule MySigils do #returns the downcasing string if option l is given then returns the list of downcase letters def sigil_l(string,[]), do: String.Casing.downcase(string) def sigil_l(string,[?l]), do: String.Casing.downcase(string) |> String.graphemes #returns the upcasing string if option l is given then returns the list of downcase letters def sigil_u(string,[]), do: String.Casing.upcase(string) def sigil_u(string,[?l]), do: String.Casing.upcase(string) |> String.graphemes end
Несколько [OR]
Это просто другой способ записи нескольких условий OR. Это не рекомендуется, потому что при регулярном подходе, когда условие оценивается как true, оно перестает выполнять оставшиеся условия, которые экономят время оценки, в отличие от этого подхода, который сначала оценивает все условия в списке. Это просто плохо, но полезно для открытий.
# Regular Approach find = fn(x) when x>10 or x<5 or x==7 -> x end # Our Hack hell = fn(x) when true in [x>10,x<5,x==7] -> x end
iex Custom Configuration - iex Decoration
Скопируйте содержимое в файл и сохраните файл как .iex.exs в ~ домашнем каталоге и увидите волшебство. Вы также можете скачать файл ЗДЕСЬ
# IEx.configure colors: [enabled: true] # IEx.configure colors: [ eval_result: [ :cyan, :bright ] ] IO.puts IO.ANSI.red_background() <> IO.ANSI.white() <> " ❄❄❄ Good Luck with Elixir ❄❄❄ " <> IO.ANSI.reset Application.put_env(:elixir, :ansi_enabled, true) IEx.configure( colors: [ eval_result: [:green, :bright] , eval_error: [[:red,:bright,"Bug Bug ..!!"]], eval_info: [:yellow, :bright ], ], default_prompt: [ "\e[G", # ANSI CHA, move cursor to column 1 :white, "I", :red, "❤" , # plain string :green, "%prefix",:white,"|", :blue, "%counter", :white, "|", :red, "▶" , # plain string :white, "▶▶" , # plain string # ❤ ❤-»" , # plain string :reset ] |> IO.ANSI.format |> IO.chardata_to_string )
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow