# File lib/ruby_parser_extras.rb, line 141 def clean_mlhs sexp case sexp.sexp_type when :masgn then if sexp.size == 2 and sexp[1].sexp_type == :array then s(:masgn, *sexp[1][1..-1].map { |sub| clean_mlhs sub }) else sexp end when :gasgn, :iasgn, :lasgn, :cvasgn then if sexp.size == 2 then sexp.last else sexp # optional value end else raise "unsupported type: #{sexp.inspect}" end end