Size: a a a

2020 October 28

ev

eugene vikulov in pro.elixir
я понимаю, что явное лучше неявного, но тут и экономия времени и минимизация ошибки
источник

ev

eugene vikulov in pro.elixir
вообще все типы в little endian
источник

ev

eugene vikulov in pro.elixir
quote(do: <<var!(name)::integer-unsigned-size(16)>>)                                     
{:<<>>, [],
[
  {:"::", [],
   [
     {:var!, [context: Elixir, import: Kernel], [{:name, [], Elixir}]},
     {:-, [context: Elixir, import: Kernel],
      [
        {:-, [context: Elixir, import: Kernel],
         [{:integer, [], Elixir}, {:unsigned, [], Elixir}]},
        {:size, [], [16]}
      ]}
   ]}
]}
источник

ev

eugene vikulov in pro.elixir
если это просто вставить в тело макроса, то компилятора ругается
источник

jc

john conor  in pro.elixir
MrFlorius
А у меня у одного ощущение что intellij работает в 30 фпс?
дык на яве же
источник

AR

Andrew Rudenko in pro.elixir
john conor 
дык на яве же
совершенно ортогональные вещи
источник

AN

Alexey Novoselov in pro.elixir
eugene vikulov
вообще все типы в little endian
unqote(var!(name)) скорее всего нужно
источник

SM

Sergei Maximov in pro.elixir
eugene vikulov
Доброго дня. Есть вопрос по макросам. Вся спецификация на протокол усеяна типами uint/lint/etc, хотелось бы для парсинга/сериализации использовать не def some_parse(«some_var::integer-unsigned-liittle-size(16)»), do: some_var, а макрос типо def some_parse(«uint(some_name)»), do: some_name. Как это можно сделать?
defmodule Test do
 defmacro uint do
   quote do
     integer - unsigned - little - size(16)
   end
 end

 def some_parse(<<some_var::uint>>), do: some_var * 2
end
источник

SM

Sergei Maximov in pro.elixir
Sergei Maximov
defmodule Test do
 defmacro uint do
   quote do
     integer - unsigned - little - size(16)
   end
 end

 def some_parse(<<some_var::uint>>), do: some_var * 2
end
Ну и, естественно, можно так же использовать макросы с параметрами
источник

ev

eugene vikulov in pro.elixir
Sergei Maximov
defmodule Test do
 defmacro uint do
   quote do
     integer - unsigned - little - size(16)
   end
 end

 def some_parse(<<some_var::uint>>), do: some_var * 2
end
большое вам спасибо, всё проще чем я ожидал
источник

jc

john conor  in pro.elixir
источник

PG

Pig Greenest in pro.elixir
name и list поменяй местами в get_free_name
источник

jc

john conor  in pro.elixir
Pig Greenest
name и list поменяй местами в get_free_name
интуитивно чувствую что это как то даст использовать пайпы?
источник

PG

Pig Greenest in pro.elixir
да, construct_widget_name можно будет целиком пайпами сделать
источник

jc

john conor  in pro.elixir
Pig Greenest
да, construct_widget_name можно будет целиком пайпами сделать
ух ты, спасибо
источник

LL

Lama Lover in pro.elixir
Чат, может кто-нибудь знает какой-нибудь плаг или встроенный способ по-быстренькому сделать глобальный рейт-лимит в фениксе?
источник

Z

Zae in pro.elixir
hammer
источник

LL

Lama Lover in pro.elixir
Zae
hammer
Спасибо, попробую
источник

jc

john conor  in pro.elixir
источник

AD

Anastasiya Dyachenko in pro.elixir
а что, можно покритиковать?)
источник