package
{
import flash.display.Sprite;
import flash.text.TextField;
import flash.utils.Dictionary;
public class Hello extends Sprite
{
public function Hello()
{
文字列.を生成(笑);
それに対して(わんだー).を追加(笑);
それに対して(えふえる).を追加(笑);
それを(めっせーじ).で覚える(笑);
テキストフィールド.を生成(笑);
それに対して(覚えた(めっせーじ)).を設定(笑);
それを表示(笑);
}
private var _stack:Array = [];
private var _dict:Dictionary = new Dictionary();
private function push(obj:Object):void
{
_stack.push(obj);
}
private function pop():Object
{
return _stack.pop();
}
private function peek():Object
{
return _stack[_stack.length - 1];
}
public function get 笑():Object
{
return null;
}
public function get わんだー():String
{
return "wonder";
}
public function get えふえる():String
{
return "fl";
}
public function get めっせーじ():String
{
return "message";
}
public function get 文字列():Hello
{
push(String);
return this;
}
public function get テキストフィールド():Hello
{
push(TextField);
return this;
}
public function を生成(p:Object):void
{
var c:Class = pop() as Class;
push(new c());
}
public function それに対して(p:Object):Hello
{
push(p);
return this;
}
public function それを(p:Object):Hello
{
push(p);
return this;
}
public function を追加(p:Object):void
{
var b:String = pop() as String;
var a:String = pop() as String;
push(a + b);
}
public function で覚える(p:Object):void
{
var k:Object = pop();
var v:Object = pop();
_dict[k] = v;
}
public function 覚えた(p:Object):Object
{
return _dict[p];
}
public function を設定(p:Object):void
{
var s:String = pop() as String;
var tf:TextField = peek() as TextField;
tf.text = s;
}
public function それを表示(p:Object):void
{
var tf:TextField = pop() as TextField;
addChild(tf);
}
}
}