Misc #14000
closedOpenStruct with #frozen_string_literal: true
Description
The current implementation of OpenStruct needs minimal changes in order to support frozen strings.
The mutable strings are only on inspect method.
IMO, we have two options:
a) leave the code as it is and just adding .dup where is needed
b) Change to a functional style (map + join) instead of flags + concat.
        
          
          Updated by esparta (Espartaco Palma) about 8 years ago
          
          
        
        
      
      For your consideration: https://github.com/ruby/ruby/pull/1714
        
          
          Updated by duerst (Martin Dürst) about 8 years ago
          
          
        
        
      
      Thanks for looking at where we can use #frozen_string_literal: true.
I think it's good to try this, but #frozen_string_literal: true should not be used as a cargo cult. So it would be good to know whether your patch leads to some/any speedups or not, or some other improvements.
        
          
          Updated by k0kubun (Takashi Kokubun) about 8 years ago
          
          
        
        
      
      - Assignee set to marcandre (Marc-Andre Lafortune)
 
        
          
          Updated by marcandre (Marc-Andre Lafortune) about 8 years ago
          
          
        
        
      
      - Status changed from Open to Closed
 
Applied in changeset trunk|r60406.
lib/ostruct.rb: Use frozen literals.
Patch adapted from Espartaco Palma. [GH-1714] [Bug #14000]