Class: Declutter

Inherits:
Object
  • Object
show all
Defined in:
lib/declutter.rb

Overview

Declutter

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeDeclutter

Creates a new Declutter object. Takes no params.



30
31
32
33
34
35
36
37
# File 'lib/declutter.rb', line 30

def initialize
	@delete_empty_hashes = true
	@delete_empty_arrays = true
	@delete_redundancies = false
	@delete_nils = false
	@delete_falses = false
	@process_others = true
end

Instance Attribute Details

#delete_empty_arraysObject

If empty arrays should be deleted. True by default.



9
10
11
# File 'lib/declutter.rb', line 9

def delete_empty_arrays
  @delete_empty_arrays
end

#delete_empty_hashesObject

If empty hashes should be deleted. True by default.



6
7
8
# File 'lib/declutter.rb', line 6

def delete_empty_hashes
  @delete_empty_hashes
end

#delete_falsesObject

If falses should be deleted. False by default.



18
19
20
# File 'lib/declutter.rb', line 18

def delete_falses
  @delete_falses
end

#delete_nilsObject

If nils should be deleted. False by default.



15
16
17
# File 'lib/declutter.rb', line 15

def delete_nils
  @delete_nils
end

#delete_redundanciesObject

If redundant array elements should be deleted. False by default.



12
13
14
# File 'lib/declutter.rb', line 12

def delete_redundancies
  @delete_redundancies
end

#process_othersObject

If objects that respond to #declutter should be processed Defaults to true.



22
23
24
# File 'lib/declutter.rb', line 22

def process_others
  @process_others
end

Class Method Details

.process(obj) ⇒ Object

Shortcut for decluttering with default settings.



70
71
72
# File 'lib/declutter.rb', line 70

def self.process(obj)
	self.new.process obj
end

Instance Method Details

#process(obj) ⇒ Object

Declutter a hash or array.



49
50
51
52
53
54
55
56
57
58
# File 'lib/declutter.rb', line 49

def process(obj)
	# declutter hash
	if obj.is_a?(Hash)
		process_hash obj
	
	# declutter array
	elsif obj.is_a?(Array)
		process_array obj
	end
end