Пользовательские метаданные в AS3/Flex?

Как создавать и работать с настраиваемыми метаданными в ActionScript3/Flex?

Ответ 1

Существует два общих направления для обработки метаданных в ActionScript в Flex:

Ответ 2

Чтобы создать метаданные, просто используйте синтаксис квадратной скобки в определении вашего класса:

[ClassAttr]
public class ClassWithMetadata {
    [AttributeNoArgs]
    public var data:Object;

    [AttributeWithArgs(arg="value)]
    public var prop:Object;
}

Вызовите describeType(ClassWithMetadata), чтобы получить описание вашего класса xml. Метаданные будут там, вы можете проанализировать и обработать, как вам нравится.
Чтобы компилятор не удалял метаданные, добавьте аргумент компилятора -keep-as3-metadata Attribute для каждого используемого имени атрибута. Это можно сделать в настройках библиотеки или в каждом проекте, который использует метаданные.