Паттерн матчинг классов без where
От: CodingUnit Россия  
Дата: 05.01.12 07:59
Оценка: 99 (1) +1
Подумал что не очень удобно матчить классы с ключевым словом where, особенно когда классы вложенные, решил посмотреть что мешает в компиляторе реализовать эту функцию, оказывается все очень просто, эта функция включается добавлением одной строчки. Старый синтаксис останется тоже для совместимости, остается лишь вопрос что думает сообщество на это изменение, нет ли возражений и аргументов против этого?



class Test
{
  public field : int;
}

// старый синтаксис:
def func1(obj : Test)
{
 match (obj)
 {
   | Test where (field = f) => f
 }
}

// новый синтаксис (не отличается от вариантов):
def func2(obj : Test)
{
 match (obj)
 {
   | Test(field = f) => f
 }
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.