Как такое переписать на Н
От: _d_m_  
Дата: 26.03.12 12:09
Оценка:
            Проекции = (
                from полеИнфо in _тип.GetFields()
                // там где есть атрибут Проекция
                let проекцияАтр = (Проекция)полеИнфо.GetCustomAttributes(typeof(Проекция), false).SingleOrDefault()
                where проекцияАтр != null
                // в одном атрибуте может содержаться несколько проекций
                let проекцииНаВнутрПоля = (
                    from проекцияНаВнутрПоле in проекцияАтр.СтолбцыРидера_ПоляКласса
                    select new МультиПроекция.ПроекцияВнутриСсылаемого(полеИнфо.FieldType.GetField(проекцияНаВнутрПоле.Value), проекцияНаВнутрПоле.Key)
                ).ToArray()
                select new МультиПроекция(полеИнфо, проекцииНаВнутрПоля)
            ).ToArray();

Пытаемся:
            Проекции = (linq<#
                from полеИнфо in _тип.GetFields()
                // там где есть атрибут Проекция
                let проекцияАтр = полеИнфо.GetCustomAttributes(typeof(Проекция), false).SingleOrDefault() :> Проекция
                where проекцияАтр != null
                // в одном атрибуте может содержаться несколько проекций
                let проекцииНаВнутрПоля = (
                    from проекцияНаВнутрПоле in проекцияАтр.СтолбцыРидера_ПоляКласса
                    select МультиПроекция.ПроекцияВнутриСсылаемого(полеИнфо.FieldType.GetField(проекцияНаВнутрПоле.Value), проекцияНаВнутрПоле.Key)
                ).ToArray()
                select МультиПроекция(полеИнфо, проекцииНаВнутрПоля)
                #>
            ).ToArray();


let проекцииНаВнутрПоля = (
error : unclosed bracket
... << RSDN@Home 1.2.0 alpha 5 rev. 1539>>
Re: Как такое переписать на Н
От: hardcase Пират http://nemerle.org
Дата: 26.03.12 12:14
Оценка: 4 (1)
Здравствуйте, _d_m_, Вы писали:

У вас вложенный LINQ запрос, который также надо привести в N-синтаксис:

            Проекции = (linq<#
                from полеИнфо in _тип.GetFields()
                // там где есть атрибут Проекция
                let проекцияАтр = полеИнфо.GetCustomAttributes(typeof(Проекция), false).SingleOrDefault() :> Проекция
                where проекцияАтр != null
                // в одном атрибуте может содержаться несколько проекций
                let проекцииНаВнутрПоля = (linq <#
                    from проекцияНаВнутрПоле in проекцияАтр.СтолбцыРидера_ПоляКласса
                    select МультиПроекция.ПроекцияВнутриСсылаемого(полеИнфо.FieldType.GetField(проекцияНаВнутрПоле.Value), проекцияНаВнутрПоле.Key) #>
                ).ToArray()
                select МультиПроекция(полеИнфо, проекцииНаВнутрПоля)
                #>
            ).ToArray();


Дисклеймер: код не проверял, писал в браузере.
/* иЗвиНите зА неРовнЫй поЧерК */
Re[2]: Как такое переписать на Н
От: _d_m_  
Дата: 26.03.12 13:36
Оценка:
Здравствуйте, hardcase, Вы писали:

H>Здравствуйте, _d_m_, Вы писали:


H>У вас вложенный LINQ запрос, который также надо привести в N-синтаксис:

H>

H>            Проекции = (linq<#
H>                from полеИнфо in _тип.GetFields()
H>                // там где есть атрибут Проекция
H>                let проекцияАтр = полеИнфо.GetCustomAttributes(typeof(Проекция), false).SingleOrDefault() :> Проекция
H>                where проекцияАтр != null
H>                // в одном атрибуте может содержаться несколько проекций
H>                let проекцииНаВнутрПоля = (linq <#
H>                    from проекцияНаВнутрПоле in проекцияАтр.СтолбцыРидера_ПоляКласса
H>                    select МультиПроекция.ПроекцияВнутриСсылаемого(полеИнфо.FieldType.GetField(проекцияНаВнутрПоле.Value), проекцияНаВнутрПоле.Key) #>
H>                ).ToArray()
H>                select МультиПроекция(полеИнфо, проекцииНаВнутрПоля)
H>                #>
H>            ).ToArray();
H>


Спс. Но вот нафиг эти ворнинги:
... : warning : N168: a value bound in pattern полеИнфо was never used
... : warning : hint: replace name with `_' or prefix it like `_bar' to avoid the warning
... : warning : N168: a value bound in pattern проекцияАтр was never used
... << RSDN@Home 1.2.0 alpha 5 rev. 1539>>
Re[3]: Как такое переписать на Н
От: VladD2 Российская Империя www.nemerle.org
Дата: 26.03.12 14:30
Оценка:
Здравствуйте, _d_m_, Вы писали:

___>Спс. Но вот нафиг эти ворнинги:

___>... : warning : N168: a value bound in pattern полеИнфо was never used
___>... : warning : hint: replace name with `_' or prefix it like `_bar' to avoid the warning
___>... : warning : N168: a value bound in pattern проекцияАтр was never used

Недоработка. Добавь в багтрекер пофиксим.

Пока что добавь "_" в начало имени.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Как такое переписать на Н
От: _d_m_  
Дата: 26.03.12 15:06
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Добавь в багтрекер пофиксим.


Стесняюсь спросить... как это сделать?
... << RSDN@Home 1.2.0 alpha 5 rev. 1539>>
Re[5]: Как такое переписать на Н
От: hardcase Пират http://nemerle.org
Дата: 26.03.12 15:10
Оценка:
Здравствуйте, _d_m_, Вы писали:

___>Здравствуйте, VladD2, Вы писали:


VD>>Добавь в багтрекер пофиксим.


___>Стесняюсь спросить... как это сделать?


https://github.com/rsdn/nemerle/issues/new
/* иЗвиНите зА неРовнЫй поЧерК */
Re[5]: Как такое переписать на Н
От: VladD2 Российская Империя www.nemerle.org
Дата: 26.03.12 15:55
Оценка:
Здравствуйте, _d_m_, Вы писали:

VD>>Добавь в багтрекер пофиксим.


___>Стесняюсь спросить... как это сделать?


Зайти сюда и создать issue. Естественно, на гитхабе нужно иметь учетную запись.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Как такое переписать на Н
От: _d_m_  
Дата: 27.03.12 13:20
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, _d_m_, Вы писали:


VD>>>Добавь в багтрекер пофиксим.


___>>Стесняюсь спросить... как это сделать?


VD>Зайти сюда и создать issue. Естественно, на гитхабе нужно иметь учетную запись.


Ну вроде запилил
https://github.com/rsdn/nemerle/issues/321
... << RSDN@Home 1.2.0 alpha 5 rev. 1539>>
Re[7]: Как такое переписать на Н
От: VladD2 Российская Империя www.nemerle.org
Дата: 27.03.12 15:25
Оценка:
Здравствуйте, _d_m_, Вы писали:

___>Ну вроде запилил

___>https://github.com/rsdn/nemerle/issues/321

ОК. Починим до релиза.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.