Flash supports arbitrary metadata tags on classes and their public members (variables and property accessors), and can retain this information for runtime reflection via the AS3 flash.utils.describeType API function.
Within Flash Professional, it seems to retain the metadata only if compiling in debug mode or when compiling to a SWC file. When compiling to release mode, it strips the metadata for optimization.
With the FLEX compiler, you can specify the "-keep-as3-metadata" option to keep the metadata in release mode. Is there a way to specify such a compiler option in Flash Professional CS6?
I want to use this information in my AS3 equivalent of JSON.NET, so that I can apply custom DataContract and DataMember attributes to types and thier individual members. Currently, I just have it serializing all public variables and accessors for types by default.