2008/03/24

 MacOS Xでもavmplus -i

[ AIR ]

Windows版のavmplusは、AVMPLUS_INTERACTIVEを定義してビルドすると、avmplus -iで対話形式でtamarinが起動するそうな。

いまのところ、Windows版のみの機能らしく、とてもイヤーな感じなので、MacOS Xでもavmplus -iを使えるようにしました(笑)。

でも、それだけだと、単にWindows版と同じ機能が使えるようになっただけなので、Windows版に無い機能を追加したった。

ファイルのinclude機能追加
以下のように指定することで、ASファイルをincludeできるようにしました。
(avmplus) .in filename.as

マルチステートメント対応
対話モードは、基本的にASのソースを1行入力したところで、それをファイルに保存し、コンパイルして実行するのだけど、複数行入力できるようにしました。

それまでに入力したソースをコンパイル&実行するには、
(avmplus) .exec
とやる。

以下、実行例   
  $ ./avmplus -i
  (avmplus) .import builtin.abc
     -import "builtin.abc" 
  (avmplus) .in salute.as
     -in "salute.as" 
  (avmplus) var tam:salute = new salute();
  (avmplus) tam.hello();
  (avmplus) tam.bye();
  (avmplus) .exec
  Hello, Tamarin!
  Goodbye Tamarin...
  (avmplus)

ちなみにsalute.asは、こんなの   
  package {
    public class salute {
      public function salute():void {
        super();
      }

      public function hello():void {
        trace('Hello, Tamarin!');
      }

      public function bye():void {
        trace('Goodbye Tamarin...');
      }
    }
  }

例によって、ソースコードとビルド方法はSpark Projectに公開しましたので、興味のある人は覗いてみてください。

何か、デザインがかっこ良くなってる!