Class: String

Inherits:
Object show all
Defined in:
lib/mug/bool.rb,
lib/mug/affix.rb

Instance Method Summary collapse

Instance Method Details

#affix(prefix, suffix = nil) ⇒ Object



4
5
6
7
# File 'lib/mug/affix.rb', line 4

def affix prefix, suffix=nil
  suffix = prefix if suffix.nil?
  "#{prefix}#{self}#{suffix}"
end

#affix!(prefix, suffix = nil) ⇒ Object



19
20
21
# File 'lib/mug/affix.rb', line 19

def affix! prefix, suffix=nil
  replace affix(prefix, suffix)
end

#affix?(prefix, suffix = nil) ⇒ Boolean

Returns:

  • (Boolean)


33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/mug/affix.rb', line 33

def affix? prefix, suffix=nil
  suffix = prefix if suffix.nil?
  if Regexp === prefix
    md = match(/\A#{prefix}/)
    if md
      rest = md.post_match
    else
      return false
    end
  else
    prefix = prefix.to_s
    if start_with? prefix
      i = prefix.length
      rest = self[i..-1]
    else
      return false
    end
  end
  rest.suffix? suffix
end

#prefix(str) ⇒ Object



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

def prefix str
  "#{str}#{self}"
end

#prefix!(str) ⇒ Object



23
24
25
# File 'lib/mug/affix.rb', line 23

def prefix! str
  replace prefix(str)
end

#prefix?(pattern) ⇒ Boolean

Returns:

  • (Boolean)


54
55
56
57
58
59
60
61
# File 'lib/mug/affix.rb', line 54

def prefix? pattern
  if Regexp === pattern
    #match?(/\A#{pattern}/)
    !!(self =~ /\A#{pattern}/)
  else
    start_with? pattern.to_s
  end
end

#suffix(str) ⇒ Object



13
14
15
# File 'lib/mug/affix.rb', line 13

def suffix str
  "#{self}#{str}"
end

#suffix!(str) ⇒ Object



27
28
29
# File 'lib/mug/affix.rb', line 27

def suffix! str
  replace suffix(str)
end

#suffix?(pattern) ⇒ Boolean

Returns:

  • (Boolean)


63
64
65
66
67
68
69
70
# File 'lib/mug/affix.rb', line 63

def suffix? pattern
  if Regexp === pattern
    #match?(/#{pattern}\z/)
    !!(self =~ /#{pattern}\z/)
  else
    end_with? pattern.to_s
  end
end

#to_bObject

Converts str to a boolean. Returns true if not empty.



56
57
58
# File 'lib/mug/bool.rb', line 56

def to_b
  !empty?
end