Re[5]: родил
От: qxWork Голландия http://www.jetbrains.com/company/people/Coox_Sergey.html
Дата: 26.03.08 16:53
Оценка: 1 (1)
Здравствуйте, Аноним, Вы писали:

А>А как мне у кэшированого элемента поменять права доступа (напр. с public на internal) и прочие модификаторы (readonly, static, ...)?

А>Т.е. с помощью IDeclarationsCache я получаю корневой IDeclaredElement и гуляю дальше по нему — видеть все эти модификаторы я могу — геттеры на них есть, а сеттеров нет, или они гдето глубже спрятаны. Или надо по другому дереву гулять?

перейди к декларациям, с элементами кэша ты ничего сделать не сможешь (например, если они из ассембли)
Пример
{code}
IDeclaredElement declaredElement;
foreach( var decl in declaredElement.GetDeclarations() ) {
var modifiersOwner = decl as IModifiersOwnerDeclaration;
if( modifiersOwner != null )
modifiersOwner.SetAccesRights( AccessRights.PUBLIC );
}
{code}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.