ruby-changes:39961
From: akr <ko1@a...>
Date: Mon, 5 Oct 2015 22:27:57 +0900 (JST)
Subject: [ruby-changes:39961] akr:r52042 (trunk): * lib/pp.rb: Use frozen_string_literal: true.
akr 2015-10-05 22:27:48 +0900 (Mon, 05 Oct 2015) New Revision: 52042 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=52042 Log: * lib/pp.rb: Use frozen_string_literal: true. * lib/prettyprint.rb: Ditto. * lib/resolv.rb: Ditto. * lib/tmpdir.rb: Ditto. * test/test_pp.rb: Ditto. * test/test_prettyprint.rb: Ditto. * tool/transcode-tblgen.rb: Ditto. Modified files: trunk/ChangeLog trunk/lib/pp.rb trunk/lib/prettyprint.rb trunk/lib/resolv.rb trunk/lib/tmpdir.rb trunk/test/test_pp.rb trunk/test/test_prettyprint.rb trunk/tool/transcode-tblgen.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 52041) +++ ChangeLog (revision 52042) @@ -1,3 +1,19 @@ https://github.com/ruby/ruby/blob/trunk/ChangeLog#L1 +Mon Oct 5 22:25:49 2015 Tanaka Akira <akr@f...> + + * lib/pp.rb: Use frozen_string_literal: true. + + * lib/prettyprint.rb: Ditto. + + * lib/resolv.rb: Ditto. + + * lib/tmpdir.rb: Ditto. + + * test/test_pp.rb: Ditto. + + * test/test_prettyprint.rb: Ditto. + + * tool/transcode-tblgen.rb: Ditto. + Mon Oct 5 20:39:32 2015 Benoit Daloze <eregontp@g...> * test/ruby/test_thread.rb: fix potential race condition. Index: lib/prettyprint.rb =================================================================== --- lib/prettyprint.rb (revision 52041) +++ lib/prettyprint.rb (revision 52042) @@ -1,3 +1,5 @@ https://github.com/ruby/ruby/blob/trunk/lib/prettyprint.rb#L1 +# -*- frozen_string_literal: true -*- +# # This class implements a pretty printing algorithm. It finds line breaks and # nice indentations for grouped structure. # @@ -40,7 +42,7 @@ class PrettyPrint https://github.com/ruby/ruby/blob/trunk/lib/prettyprint.rb#L42 # output # end # - def PrettyPrint.format(output='', maxwidth=79, newline="\n", genspace=lambda {|n| ' ' * n}) + def PrettyPrint.format(output=''.dup, maxwidth=79, newline="\n", genspace=lambda {|n| ' ' * n}) q = PrettyPrint.new(output, maxwidth, newline, &genspace) yield q q.flush @@ -54,7 +56,7 @@ class PrettyPrint https://github.com/ruby/ruby/blob/trunk/lib/prettyprint.rb#L56 # The invocation of +breakable+ in the block doesn't break a line and is # treated as just an invocation of +text+. # - def PrettyPrint.singleline_format(output='', maxwidth=nil, newline=nil, genspace=nil) + def PrettyPrint.singleline_format(output=''.dup, maxwidth=nil, newline=nil, genspace=nil) q = SingleLine.new(output) yield q output @@ -77,7 +79,7 @@ class PrettyPrint https://github.com/ruby/ruby/blob/trunk/lib/prettyprint.rb#L79 # The block is used to generate spaces. {|width| ' ' * width} is used if it # is not given. # - def initialize(output='', maxwidth=79, newline="\n", &genspace) + def initialize(output=''.dup, maxwidth=79, newline="\n", &genspace) @output = output @maxwidth = maxwidth @newline = newline Index: lib/resolv.rb =================================================================== --- lib/resolv.rb (revision 52041) +++ lib/resolv.rb (revision 52042) @@ -1,3 +1,5 @@ https://github.com/ruby/ruby/blob/trunk/lib/resolv.rb#L1 +# -*- frozen_string_literal: true -*- + require 'socket' require 'timeout' require 'thread' @@ -1426,7 +1428,7 @@ class Resolv https://github.com/ruby/ruby/blob/trunk/lib/resolv.rb#L1428 class MessageEncoder # :nodoc: def initialize - @data = '' + @data = ''.dup @names = {} yield self end Index: lib/pp.rb =================================================================== --- lib/pp.rb (revision 52041) +++ lib/pp.rb (revision 52042) @@ -1,3 +1,5 @@ https://github.com/ruby/ruby/blob/trunk/lib/pp.rb#L1 +# -*- frozen_string_literal: true -*- + require 'prettyprint' module Kernel @@ -9,7 +11,7 @@ module Kernel https://github.com/ruby/ruby/blob/trunk/lib/pp.rb#L11 # # See the PP module for more information. def pretty_inspect - PP.pp(self, '') + PP.pp(self, ''.dup) end private @@ -347,7 +349,7 @@ class PP < PrettyPrint https://github.com/ruby/ruby/blob/trunk/lib/pp.rb#L349 if /\(PP::ObjectMixin\)#/ =~ Object.instance_method(:method).bind(self).call(:pretty_print).inspect raise "pretty_print is not overridden for #{self.class}" end - PP.singleline_pp(self, '') + PP.singleline_pp(self, ''.dup) end end end Index: lib/tmpdir.rb =================================================================== --- lib/tmpdir.rb (revision 52041) +++ lib/tmpdir.rb (revision 52042) @@ -1,3 +1,4 @@ https://github.com/ruby/ruby/blob/trunk/lib/tmpdir.rb#L1 +# -*- frozen_string_literal: true -*- # # tmpdir - retrieve temporary directory path # @@ -111,7 +112,7 @@ class Dir https://github.com/ruby/ruby/blob/trunk/lib/tmpdir.rb#L112 suffix &&= (String.try_convert(suffix) or raise ArgumentError, "unexpected suffix: #{suffix.inspect}") t = Time.now.strftime("%Y%m%d") - path = "#{prefix}#{t}-#{$$}-#{rand(0x100000000).to_s(36)}" + path = "#{prefix}#{t}-#{$$}-#{rand(0x100000000).to_s(36)}".dup path << "-#{n}" if n path << suffix if suffix path Index: tool/transcode-tblgen.rb =================================================================== --- tool/transcode-tblgen.rb (revision 52041) +++ tool/transcode-tblgen.rb (revision 52042) @@ -1,3 +1,5 @@ https://github.com/ruby/ruby/blob/trunk/tool/transcode-tblgen.rb#L1 +# -*- frozen_string_literal: true -*- + require 'optparse' require 'erb' require 'fileutils' @@ -53,7 +55,7 @@ class ArrayCode https://github.com/ruby/ruby/blob/trunk/tool/transcode-tblgen.rb#L55 @type = type @name = name @len = 0; - @content = '' + @content = ''.dup end def length @@ -517,7 +519,7 @@ class ActionMap https://github.com/ruby/ruby/blob/trunk/tool/transcode-tblgen.rb#L519 infos = infos.map {|info| generate_info(info) } maxlen = infos.map {|info| info.length }.max columns = maxlen <= 16 ? 4 : 2 - code = "" + code = "".dup 0.step(infos.length-1, columns) {|i| code << " " is = infos[i,columns] @@ -817,7 +819,7 @@ def transcode_compile_tree(name, from, m https://github.com/ruby/ruby/blob/trunk/tool/transcode-tblgen.rb#L819 end TRANSCODERS = [] -TRANSCODE_GENERATED_TRANSCODER_CODE = '' +TRANSCODE_GENERATED_TRANSCODER_CODE = ''.dup def transcode_tbl_only(from, to, map, valid_encoding=UnspecifiedValidEncoding) if VERBOSE_MODE @@ -881,7 +883,7 @@ def transcode_generated_code https://github.com/ruby/ruby/blob/trunk/tool/transcode-tblgen.rb#L883 end def transcode_register_code - code = '' + code = ''.dup TRANSCODERS.each {|transcoder_name| code << " rb_register_transcoder(&#{transcoder_name});\n" } @@ -1006,7 +1008,7 @@ if __FILE__ == $0 https://github.com/ruby/ruby/blob/trunk/tool/transcode-tblgen.rb#L1008 this_script = File.read(__FILE__) this_script.force_encoding("ascii-8bit") if this_script.respond_to? :force_encoding - base_signature = "/* autogenerated. */\n" + base_signature = "/* autogenerated. */\n".dup base_signature << "/* #{make_signature(File.basename(__FILE__), this_script)} */\n" base_signature << "/* #{make_signature(File.basename(arg), src)} */\n" @@ -1044,7 +1046,7 @@ if __FILE__ == $0 https://github.com/ruby/ruby/blob/trunk/tool/transcode-tblgen.rb#L1046 libs2 = $".dup libs = libs2 - libs1 - lib_sigs = '' + lib_sigs = ''.dup libs.each {|lib| lib = File.basename(lib) path = File.join($srcdir, lib) @@ -1053,7 +1055,7 @@ if __FILE__ == $0 https://github.com/ruby/ruby/blob/trunk/tool/transcode-tblgen.rb#L1055 end } - result = '' + result = ''.dup result << base_signature result << lib_sigs result << "\n" Index: test/test_prettyprint.rb =================================================================== --- test/test_prettyprint.rb (revision 52041) +++ test/test_prettyprint.rb (revision 52042) @@ -1,3 +1,5 @@ https://github.com/ruby/ruby/blob/trunk/test/test_prettyprint.rb#L1 +# -*- frozen_string_literal: true -*- + require 'prettyprint' require 'test/unit' @@ -14,7 +16,7 @@ class WadlerExample < Test::Unit::TestCa https://github.com/ruby/ruby/blob/trunk/test/test_prettyprint.rb#L16 end def hello(width) - PrettyPrint.format('', width) {|hello| + PrettyPrint.format(''.dup, width) {|hello| hello.group { hello.group { hello.group { @@ -81,7 +83,7 @@ End https://github.com/ruby/ruby/blob/trunk/test/test_prettyprint.rb#L83 end def tree(width) - PrettyPrint.format('', width) {|q| @tree.show(q)} + PrettyPrint.format(''.dup, width) {|q| @tree.show(q)} end def test_tree_00_19 @@ -126,7 +128,7 @@ End https://github.com/ruby/ruby/blob/trunk/test/test_prettyprint.rb#L128 end def tree_alt(width) - PrettyPrint.format('', width) {|q| @tree.altshow(q)} + PrettyPrint.format(''.dup, width) {|q| @tree.altshow(q)} end def test_tree_alt_00_18 @@ -242,7 +244,7 @@ end https://github.com/ruby/ruby/blob/trunk/test/test_prettyprint.rb#L244 class StrictPrettyExample < Test::Unit::TestCase # :nodoc: def prog(width) - PrettyPrint.format('', width) {|q| + PrettyPrint.format(''.dup, width) {|q| q.group { q.group {q.nest(2) { q.text "if"; q.breakable; @@ -387,7 +389,7 @@ end https://github.com/ruby/ruby/blob/trunk/test/test_prettyprint.rb#L389 class TailGroup < Test::Unit::TestCase # :nodoc: def test_1 - out = PrettyPrint.format('', 10) {|q| + out = PrettyPrint.format(''.dup, 10) {|q| q.group { q.group { q.text "abc" @@ -426,7 +428,7 @@ end https://github.com/ruby/ruby/blob/trunk/test/test_prettyprint.rb#L428 class Fill < Test::Unit::TestCase # :nodoc: def format(width) - PrettyPrint.format('', width) {|q| + PrettyPrint.format(''.dup, width) {|q| q.group { q.text 'abc' q.fill_breakable Index: test/test_pp.rb =================================================================== --- test/test_pp.rb (revision 52041) +++ test/test_pp.rb (revision 52042) @@ -1,3 +1,5 @@ https://github.com/ruby/ruby/blob/trunk/test/test_pp.rb#L1 +# -*- frozen_string_literal: true -*- + require 'pp' require 'delegate' require 'test/unit' @@ -6,24 +8,24 @@ module PPTestModule https://github.com/ruby/ruby/blob/trunk/test/test_pp.rb#L8 class PPTest < Test::Unit::TestCase def test_list0123_12 - assert_equal("[0, 1, 2, 3]\n", PP.pp([0,1,2,3], '', 12)) + assert_equal("[0, 1, 2, 3]\n", PP.pp([0,1,2,3], ''.dup, 12)) end def test_list0123_11 - assert_equal("[0,\n 1,\n 2,\n 3]\n", PP.pp([0,1,2,3], '', 11)) + assert_equal("[0,\n 1,\n 2,\n 3]\n", PP.pp([0,1,2,3], ''.dup, 11)) end OverriddenStruct = Struct.new("OverriddenStruct", :members, :class) def test_struct_override_members # [ruby-core:7865] a = OverriddenStruct.new(1,2) - assert_equal("#<struct Struct::OverriddenStruct members=1, class=2>\n", PP.pp(a, '')) + assert_equal("#<struct Struct::OverriddenStruct members=1, class=2>\n", PP.pp(a, ''.dup)) end def test_redefined_method - o = "" + o = "".dup def o.method end - assert_equal(%(""\n), PP.pp(o, "")) + assert_equal(%(""\n), PP.pp(o, "".dup)) end end @@ -76,17 +78,17 @@ end https://github.com/ruby/ruby/blob/trunk/test/test_pp.rb#L78 class PPInspectTest < Test::Unit::TestCase def test_hasinspect a = HasInspect.new(1) - assert_equal("<inspect:1>\n", PP.pp(a, '')) + assert_equal("<inspect:1>\n", PP.pp(a, ''.dup)) end def test_hasprettyprint a = HasPrettyPrint.new(1) - assert_equal("<pretty_print:1>\n", PP.pp(a, '')) + assert_equal("<pretty_print:1>\n", PP.pp(a, ''.dup)) end def test_hasboth a = HasBoth.new(1) - assert_equal("<pretty_print:1>\n", PP.pp(a, '')) + assert_equal("<pretty_print:1>\n", PP.pp(a, ''.dup)) end def test_pretty_print_inspect @@ -98,21 +100,21 @@ class PPInspectTest < Test::Unit::TestCa https://github.com/ruby/ruby/blob/trunk/test/test_pp.rb#L100 def test_proc a = proc {1} - assert_equal("#{a.inspect}\n", PP.pp(a, '')) + assert_equal("#{a.inspect}\n", PP.pp(a, ''.dup)) end def test_to_s_with_iv a = Object.new def a.to_s() "aaa" end a.instance_eval { @a = nil } - result = PP.pp(a, '') + result = PP.pp(a, ''.dup) assert_equal("#{a.inspect}\n", result) end def test_to_s_without_iv a = Object.new def a.to_s() "aaa" end - result = PP.pp(a, '') + result = PP.pp(a, ''.dup) assert_equal("#{a.inspect}\n", result) end end @@ -121,48 +123,48 @@ class PPCycleTest < Test::Unit::TestCase https://github.com/ruby/ruby/blob/trunk/test/test_pp.rb#L123 def test_array a = [] a << a - assert_equal("[[...]]\n", PP.pp(a, '')) - assert_equal("#{a.inspect}\n", PP.pp(a, '')) + assert_equal("[[...]]\n", PP.pp(a, ''.dup)) + assert_equal("#{a.inspect}\n", PP.pp(a, ''.dup)) end def test_hash a = {} a[0] = a - assert_equal("{0=>{...}}\n", PP.pp(a, '')) - assert_equal("#{a.inspect}\n", PP.pp(a, '')) + assert_equal("{0=>{...}}\n", PP.pp(a, ''.dup)) + assert_equal("#{a.inspect}\n", PP.pp(a, ''.dup)) end S = Struct.new("S", :a, :b) def test_struct a = S.new(1,2) a.b = a - assert_equal("#<struct Struct::S a=1, b=#<struct Struct::S:...>>\n", PP.pp(a, '')) - assert_equal("#{a.inspect}\n", PP.pp(a, '')) + assert_equal("#<struct Struct::S a=1, b=#<struct Struct::S:...>>\n", PP.pp(a, ''.dup)) + assert_equal("#{a.inspect}\n", PP.pp(a, ''.dup)) end def test_object a = Object.new a.instance_eval {@a = a} - assert_equal(a.inspect + "\n", PP.pp(a, '')) + assert_equal(a.inspect + "\n", PP.pp(a, ''.dup)) end def test_anonymous a = Class.new.new - assert_equal(a.inspect + "\n", PP.pp(a, '')) + assert_equal(a.inspect + "\n", PP.pp(a, ''.dup)) end def test_withinspect a = [] a << HasInspect.new(a) - assert_equal("[<inspect:[...]>]\n", PP.pp(a, '')) - assert_equal("#{a.inspect}\n", PP.pp(a, '')) + assert_equal("[<inspect:[...]>]\n", PP.pp(a, ''.dup)) + assert_equal("#{a.inspect}\n", PP.pp(a, ''.dup)) end def test_share_nil begin PP.sharing_detection = true a = [nil, nil] - assert_equal("[nil, nil]\n", PP.pp(a, '')) + assert_equal("[nil, nil]\n", PP.pp(a, ''.dup)) ensure PP.sharing_detection = false end @@ -171,8 +173,8 @@ end https://github.com/ruby/ruby/blob/trunk/test/test_pp.rb#L173 class PPSingleLineTest < Test::Unit::TestCase def test_hash - assert_equal("{1=>1}", PP.singleline_pp({ 1 => 1}, '')) # [ruby-core:02699] - assert_equal("[1#{', 1'*99}]", PP.singleline_pp([1]*100, '')) + assert_equal("{1=>1}", PP.singleline_pp({ 1 => 1}, ''.dup)) # [ruby-core:02699] + assert_equal("[1#{', 1'*99}]", PP.singleline_pp([1]*100, ''.dup)) end end -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/