Skip to content

Conversation

erwins22
Copy link

No description provided.

1. Изменен алгорит рассчета хешаобъекта
2. Исправлен баг rsdn#503
3. Сокращен генерируемый код
@NN---
Copy link
Member

NN--- commented Aug 12, 2013

Что-то с форматированием.
Комментарии не над кодом. См. Files Changed

1. Добавлены свойства атрибутов AllIgnore = true - игнорировать все поля. Поля для использования должны быть помечены как [EqualsNotIgnore] или указаны в атрибуте класса как NotIgnore 
2. Добавлена возможность указать поля вариантов NotIgnore = A.name
3. добавлена возможность отключить создание неизменяемых кусков с помощью указания WhenGenerateCashField необходимого минимального числа числа константных полей. К константным полям относятся неизменяемые примитивные типы и строки. по умолчанию значение 7.
4. Произведен отказ от использования лямбд.
5. Немного сокращен генерируемый код

[StructuralEquality(Ignore = name, NotIgnore = A.name, AllIgnore = true)]
variant X
{
 | A { name : string; name2 : string; other : int; }
 | B { name : string }
 | C {
     [EqualsNotIgnore] a1:int; 
     [EqualsNotIgnore] a2:int; 
     [EqualsNotIgnore] a3:int }
}
@NN---
Copy link
Member

NN--- commented Sep 9, 2013

Снова не так с форматированием.
Посмотри скажем на
/// Implements Equals and related methods, using the concept of

У тебя почему-то съехало и сравнение выглядит так, как-будто тут совсем другой код.
Подправь пожалуйста.

@VladD2 VladD2 force-pushed the master branch 5 times, most recently from 941736a to 4dec65b Compare January 27, 2020 21:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants