Method: StringExt#truncate

Defined in:
lib/vex/base/string/string_ext.rb

#truncate(*args) ⇒ Object

truncate :length => 30, :omission => “…”



31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/vex/base/string/string_ext.rb', line 31

def truncate(*args)
  opts = if args.length == 1 && args.first.is_a?(Hash)
    args.first
  else
    args.inject({}) do |hash, arg|
      key = case arg
      when Fixnum then :length
      when String then :omission
      end
    
      invalid_argument!(arg) if key.nil? || hash[key]
    
      hash.update key => arg
    end
  end
  
  _truncate(opts)
end