# File lib/more/facets/tuple.rb, line 244 def cast_from_string( str, &yld ) args = str.to_s.split(/\W+/) div = /\W+/.match( str.to_s )[0] if block_given? args = args.collect{ |a| yld[a] } else args = args.collect { |i| /^[0-9]+$/ =~ i ? i.to_i : i } end self.instance( args ).divider( div ) end