Class: String

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

Instance Method Summary collapse

Instance Method Details

#camelcaseObject



12
13
14
15
# File 'lib/metarecord/string.rb', line 12

def camelcase
  return self if self !~ /_/ && self =~ /[A-Z]+.*/
  split(/_|\//).map{|e| e.capitalize}.join
end

#lower_camelcaseObject



17
18
19
20
# File 'lib/metarecord/string.rb', line 17

def lower_camelcase
  upperCamelcase = camelcase
  upperCamelcase[0].downcase + upperCamelcase[1..-1]
end

#to_property_type(parent) ⇒ Object



22
23
24
25
26
27
28
# File 'lib/metarecord/string.rb', line 22

def to_property_type parent
  if parent.methods.include? :nativeTypeNameFor
    PropertyType.new(parent.nativeTypeNameFor self)
  else
    PropertyType.new self
  end
end

#underscoreObject



4
5
6
7
8
9
10
# File 'lib/metarecord/string.rb', line 4

def underscore
  self.gsub(/::/, '/').
  gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
  gsub(/([a-z\d])([A-Z])/,'\1_\2').
  tr("-", "_").
  downcase
end