# File lib/unified_ruby.rb, line 90 def rewrite_defn(exp) weirdo = exp.ivar || exp.attrset # move args up args = exp.scope.block.args(true) unless weirdo exp.insert 2, args if args # move block_arg up and in block_arg = exp.scope.block.block_arg(true) rescue nil exp.args << block_arg if block_arg # patch up attr_accessor methods exp.insert 2, s(:args) if weirdo exp end