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はできる。 中田 伸悦