Вау, мое первое сообщение о переполнении стека. «Я приехал»?Временная интроспекция связанного SWC с использованием ActionScript 3.0 + Flash/Flex
Хорошо, это странный выбор. Я пытаюсь определить, может ли быть какой-то программный способ интроспекции классов внутри связанного SWC во время выполнения.
Чтобы дать немного больше фона (возможно, есть совершенно другой способ сделать это), я рассматриваю общую структуру для Font Embedding. В настоящее время для внедрения шрифтов (с использованием связанного SWC, а не метатега [embed]) вам необходимо встроить шрифт в свой SWC с помощью Flash IDE, а затем вам нужно жестко закодировать ссылку на класс ресурса библиотеки в своем кода (возможно, создается кем-то другим, например, с использованием другой среды IDE - FlashDevelop).
Теперь, если бы во время выполнения можно было исследовать SWC и проходить через классы, которые он предоставляет, теоретически можно запрограммировать/зарегистрировать эти шрифты программно, не зная (во время компиляции), какими могут быть эти шрифты.
Следовательно, возникает вопрос: может ли кто-нибудь узнать, каким образом получить доступ к SWC как сущности во время выполнения и изучить его уязвимые классы?
В качестве стороннего аргумента в пользу такого рода вещей является простое стремление к четкому разделению обязанностей по проектированию и логике приложений. Дизайнеру легко вставлять шрифт, автора и SWC, а также редактировать соответствующий внешний файл CSS. Гораздо опаснее рассчитывать на то, что они будут обновлять жесткие ссылки на классы в коде или рассчитывать на то, что клиент не изменит свое мнение об использовании шрифта после того, как задание было скомпилировано и выпущено.
describeType() работает на множестве объектов во время выполнения и легко разбирается. Однако я не могу найти объект верхнего уровня, который содержит классы и свойства, выставленные скомпилированным SWC. Думаю, мне нужно узнать, в какую область загружены классы SWC. –
Информация, полученная от Senocular, и другие, похоже, указывают, что классы внутри SWC не отображаются с FP10. –