# File lib/rgl/base.rb, line 11 11: def inject(*argv) 12: argc = argv.size 13: 14: if argc == 0 15: first = true 16: result = nil 17: 18: each { |e| 19: if first 20: first = false 21: result = e 22: else 23: result = yield(result, e) 24: end 25: } 26: elsif argc == 1 27: result = argv[0] 28: 29: each { |e| result = yield(result, e) } 30: else 31: raise ArgumentError, "wrong # of arguments(#{argc} for 1)" 32: end 33: 34: result 35: end