lib/picky/extensions/symbol.rb in picky-4.27.1 vs lib/picky/extensions/symbol.rb in picky-4.28.1
- old
+ new
@@ -28,19 +28,25 @@
# :keys.each_subtoken(2) # => yields each of [:keys, :key, :ke]
#
def each_subtoken from_length = 1, range = nil
sub = self.id2name
- sub = sub[range] if range
+ if range
+ unless (range.first.zero? && range.last == -1)
+ sub = sub[range]
+ end
+ end
yield sub.intern
size = sub.size
from_length = size + from_length + 1 if from_length < 0
from_length = size if size < from_length
from_length = 1 if from_length < 1
- size.downto(from_length + 1) { yield sub.chop!.intern }
+ size.downto(from_length + 1) do
+ yield sub.chop!.intern
+ end
end
# :keys.each_intoken # => yields each of [:keys, :key, :eys, :ke, :ey, :ys, :k, :e, :y, :s]
# :keys.each_intoken(2) # => yields each of [:keys, :key, :eys, :ke, :ey, :ys]
# :keys.each_intoken(2, 3) # => yields each of [:key, :eys, :ke, :ey, :ys]
\ No newline at end of file