Size: a a a

2021 February 12

МВ

Макс Воробьев... in dlang.ru
эта хня  там по сути вместо условного
expected!Out modify(alias f, In, Out: typeof(f(expected!In.init))(expected!In in_param) {
     if (in_param.empty) {
         return Empty;
     }
     return Result(f(in_param));
}
источник

МВ

Макс Воробьев... in dlang.ru
my_list.Search(4).modify!(a => a*2);
источник

q

qq in dlang.ru
Макс Воробьев
my_list.Search(4).modify!(a => a*2);
а => a*2 тут тоже переобразование
источник

МВ

Макс Воробьев... in dlang.ru
т е вместо распаковки параметра после поиска и проверки на Empty, сразу преобразуем результат. если результата нет - возвращаем  Empty
источник

МВ

Макс Воробьев... in dlang.ru
qq
а => a*2 тут тоже переобразование
да
источник

МВ

Макс Воробьев... in dlang.ru
но все еще странная хрень
источник

Т

Тающий звук... in dlang.ru
qq
а => a*2 тут тоже переобразование
Это лямбда-функция, если что
источник

q

qq in dlang.ru
Макс Воробьев
но все еще странная хрень
тут явно не был соблюден принцип kiss
источник

МВ

Макс Воробьев... in dlang.ru
Макс Воробьев
эта хня  там по сути вместо условного
expected!Out modify(alias f, In, Out: typeof(f(expected!In.init))(expected!In in_param) {
     if (in_param.empty) {
         return Empty;
     }
     return Result(f(in_param));
}
даж не expected а простой Nullable/Optional
источник

q

qq in dlang.ru
Tuple!(T, "value", Flag!"DList", "flag");

если у меня тип возвращяемого значения такой кортеж то вторым параметром мне надо передать чтото типа
Flag!"DList".Yes
или
Yes.DList

?
источник

q

qq in dlang.ru
типа этого
источник

DH

Dark Hole in dlang.ru
Йеп
источник

OB

Oleg B in dlang.ru
qq
Result Search(alias do_func)(T v) nothrow if (isCallable!do_func)
   {
       for (Element iter = head; iter !is null; iter = iter.next)
       {
           if (iter.value == v)
           {
               return Result(do_func(iter), Yes.DList);
           }
       }
       return Empty;
пожалуйста не пишите названия функций и методов с большой буквы, это вводит в заблуждение, т.к. обычно с большой буквы только названия типов
источник

OB

Oleg B in dlang.ru
т.к. типы могут вложенными это ещё больше путаницы вносит
источник

0

000Sanya in dlang.ru
qq
Result Search(alias do_func)(T v) nothrow if (isCallable!do_func)
   {
       for (Element iter = head; iter !is null; iter = iter.next)
       {
           if (iter.value == v)
           {
               return Result(do_func(iter), Yes.DList);
           }
       }
       return Empty;
if перенести бы на след строку а то чет мне кажется что nothrow if ))))
источник

OB

Oleg B in dlang.ru
qq
Result Search(alias do_func)(T v) nothrow if (isCallable!do_func)
   {
       for (Element iter = head; iter !is null; iter = iter.next)
       {
           if (iter.value == v)
           {
               return Result(do_func(iter), Yes.DList);
           }
       }
       return Empty;
я бы сделал для списка интерфейс диапазонов, можно было б тогда std.algorithm юзать
источник

g

gavr in dlang.ru
Oleg B
пожалуйста не пишите названия функций и методов с большой буквы, это вводит в заблуждение, т.к. обычно с большой буквы только названия типов
Сей хелло ту чертов си шарп
источник

g

gavr in dlang.ru
Реально так себе идея, и кто додумался до таких дефолтов
источник

g

gavr in dlang.ru
Все кроме локальных переменных с большой, и печатать дольше и читать сложнее
источник

0

000Sanya in dlang.ru
gavr
Все кроме локальных переменных с большой, и печатать дольше и читать сложнее
печатать то чем дольше?
источник