YuS_2
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору iNNOKENTIY21 Цитата: Скриптблок типа анонимной функции, принимающей два параметра типа Object и возвращающий Object? А дальше…? | Эта часть просто вырвана из контекста... Используется статический метод Zip класса [Linq.Enumerable]: Код: static System.Collections.Generic.IEnumerable[TResult] Zip[TFirst, TSecond, TResult](System.Collections.Generic.IEnumerable[TFirst] first, System.Collections.Generic.IEnumerable[TSecond] second, System.Func[TFirst,TSecond,TResult] resultSelector), static System.Collections.Generic.IEnumerable[System.ValueTuple[TFirst,TSecond]] Zip[TFirst, TSecond](System.Collections.Generic.IEnumerable[TFirst] first, System.Collections.Generic.IEnumerable[TSecond] second) | а скриптблок, дает те самые (first, second, resultSelector), вернее, здесь именно, сам скриптблок: Код: resultSelector = [Func[Object, Object, Object]][ScriptBlock]::Create(("`$args[0]$op`$args[1]", "`$args[0], `$args[1]")[$op -eq '~']) | где [$op -eq '~'] - всего лишь: Код: if ($op -eq '~'){$true}else{$false} | а по сути 0 и 1, т.е. конкретный элемент массива. Григорий просто любит такие заковыристые выражения... | Всего записей: 3218 | Зарегистр. 03-02-2009 | Отправлено: 09:18 25-01-2020 | Исправлено: YuS_2, 09:19 25-01-2020 |
|