Извлечь тип выражения с помощью структурной замены Resharper
Я пытаюсь сделать структурный поиск R# и заменить, чтобы предложить следующее
foo.ToList()
следует преобразовать в приведенное ниже, если пользователь выбирает рефакторинг
foo as List<int> ?? foo.ToList()
поэтому в R# я бы попробовал по шаблону
$expr$.ToList()
и для замены
$expr$ as List<$type$> ?? $expr$.ToList()
Однако я не могу понять, как я мог бы назначить $type$
где
typeof($expr$) is IEnumerable<$type$>
В теории это должно работать, потому что я могу ограничить $expr$
быть типом IEnumerable<T>
но у меня нет $T$
Доступен в качестве замены токена.
Это вообще возможно?