Наткнулся на вот эту статью, которая посвящена фишкам, которые с высокой вероятностью будут добавлены в новую версию языка.
Caller Argument Expression
Это получается, что компилятор теперь можно будет заставить получить название переменной, которое было передано извне в метод?
Да, если была передана именно переменная. В общем случае можно будет получить строковое представление выражения, переданного в метод.
Ориентируемся, по соответствующему предложению на Github..
Если метод объявлен так:
public static class Debug
{
public static void Assert(bool condition, [CallerArgumentExpression("condition")] string message = null);
}
и вызывается так:
Debug.Assert(someBoolean);
Debug.Assert(array != null);
Debug.Assert(array.Length == 1);
, то компилятор подставит значение второго аргумента:
Debug.Assert(someBoolean, "someBoolean");
Debug.Assert(array != null, "array != null");
Debug.Assert(array.Length == 1, "array.Length == 1");
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости