[bruby-dev:0039] Re: bRuby ruby 1.8.1 対応について

アーカイブの一覧に戻る

Nobuyoshi Nakada nobu.****@softh*****
2004年 5月 12日 (水) 15:17:32 JST


なかだです。

At Wed, 12 May 2004 14:52:13 +0900,
Masahiro Kitajima wrote:
> > NODE_METHOD
> > NODE_FBODY
> > NODE_CFUNC
> > NODE_CREF
> > NODE_ATTRSET
> > NODE_BMETHOD
> > NODE_MEMO
> > NODE_IFUNC
>  評価対象の構文木にぶら下がるものではないようですね(勝手な希望
> 含む ^^;)。

構文木には現れませんね。

> > NODE_DMETHOD
> > NODE_LAST
>  安心して処理対象から外せます。

うっかりHEAD対象で書いてしまいましたが、DMETHODは1.8.1では有効
です。ただし、UnboundMethodをdefine_methodするためのラッパーな
ので、やはり構文木には現れません。

> > NODE_SVALUE
>  parse.y で作成されていますね。スクリプトから出現させる事ができ
> そうな雰囲気ですが... どうなのでしょう?^^;

訂正。左辺じゃなくて右辺です。

$ ruby18 -rNodeDump -e a=*1 -e a=1,2 -e 'return *a'
NodeDump V0.9

NODE_BLOCK:
  NODE_NEWLINE:  [-e:1]
    NODE_LASGN:
      NODE_SVALUE:
        NODE_SPLAT:
          NODE_LIT:  Fixnum: 1
      Assign to LV 2 (a)
  NODE_NEWLINE:  [-e:2]
    NODE_LASGN:
      NODE_SVALUE:
        NODE_ARRAY:  size = 2
          NODE_LIT:  Fixnum: 1
          NODE_LIT:  Fixnum: 2
      Assign to LV 2 (a)
  NODE_NEWLINE:  [-e:3]
    NODE_RETURN:
      NODE_SVALUE:
        NODE_SPLAT:
          NODE_LVAR:  LV 2 (a)

-- 
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
    中田 伸悦



bruby-dev メーリングリストの案内
アーカイブの一覧に戻る