Class: File
- Inherits:
-
Object
- Object
- File
- Defined in:
- lib/sparehand/safe_modify.rb
Class Method Summary collapse
Class Method Details
.safe_modify(original) ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/sparehand/safe_modify.rb', line 4 def safe_modify original path = File.dirname(original) temp_name = '.' + File.basename(original) + '.tmp' temp_path = File.join(path, temp_name) File.open(original) do |input| File.open(temp_path, 'w') do |output| yield input, output end end File.delete original File.rename temp_path, original end |