オブジェクトのメソッドを列挙する

(サンプル一覧を表示する)

これは、オブジェクトのメソッドを列挙するサンプルです。

describeType() に、詳細を知りたいオブジェクトや型名を入れると、
XML 形式でメソッドとプロパティの一覧、継承ツリーが取得できます。
Flash の実行画面
オブジェクトのメソッドを列挙する

Flashプレーヤーが入っていないか、JavaScriptが無効になっているようです。

Get Adobe Flash player

オブジェクトのメソッドを列挙する

ソースコード

package 
{
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.text.TextField;
	import flash.utils.describeType;
	
	/**
	 * オブジェクトのメソッドを列挙するサンプル
	 * @author Hikipuro
	 */
	public class Main extends Sprite 
	{
		/**
		 * 結果表示用テキストフィールド
		 */
		private var textField:TextField;
		
		/**
		 * コンストラクタ
		 */
		public function Main():void 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
		
		/**
		 * 初期化メソッド
		 * @param	e
		 */
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			// entry point
			
			// テキストフィールドの準備
			textField = new TextField();
			textField.width = 320;
			textField.height = 240;
			addChild(textField);
			
			// メインオブジェクトの詳細を取得
			var description:XML = describeType(this);
			//trace(description);
			
			// メソッド一覧を巡回
			for each (var method:XML in description.method)
			{
				// メソッド名を取得
				textField.appendText(method.@name + "(");
				
				// パラメータ一覧を巡回
				for each (var parameter:XML in method.parameter) {
					textField.appendText(parameter.@type + ", ");
				}
				
				// 戻り値を取得
				textField.appendText("):");
				textField.appendText(method.@returnType + "\n");
			}
		}
		
	}
	
}		

外部リンク