Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Спецы в AS3, подскажите, как мета-bindable может быть прикреплено к private полям? (http://www.flasher.ru/forum/showthread.php?t=143244)

mr.oizo 11.08.2010 14:11

Спецы в AS3, расскажите, как мета-bindable может быть прикреплено к not-public полям?
 
Вообщем разбираюсь я с мета-тегами, все ясно и просто, но.

Меты, как я не искал, можно обнаружить только с помощью describeType, однако это работает лишь для public полей и методов. Но [Bindable] и пр. меты флекса ведь прекрасно работают и с private полями и методами? Я поковырялся в исходниках флекса и компилятора, однако так и не смог разобраться, а как это у них так выходит?

Ибо в своем проекте я не хочу все поля и методы с моими метами оставлять с public или создавать еще один custom_namespace только для мет, хочу их оставить чистыми private или protected.

Может быть есть какие-либо настройки компиляции, позволяющие describeType или еще какому-нить методу (?) увидеть меты для закрытых переменных или еще что-то, что даст мне инфу о мете?

То есть к примеру, используя проект swiz, я хочу такой код:

Код AS3:

[Dispatcher]
private var dispatcher:IEventDispatcher;

но в этом случае describeType(), используемый с swiz, тупо не видит dispatcher, о чем и говорит документация, однако во флексе

Код AS3:

[Bindable]
private var text:String;

работает отлично, хотя в коде флекса также используется describeType() для нахождения Bindable.


Уважаемые Гуры, поможите пожалуйста! Извиняюсь за сумбурное описание проблемы.

etc 11.08.2010 15:19

[Bindable] — спец. тег, компилятор, увидев оный, переделывает переменную в геттер-сеттер.

mr.oizo 11.08.2010 15:30

etc, ясно, спасибо.

Т.е мета с private и protected невозможна, без изменения компилятора?
Только с public и custom_namespace? Верно я понимаю?

etc 11.08.2010 15:37

Да, верно.


Часовой пояс GMT +4, время: 16:04.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.