Module: Saxerator::Builder

Extended by:
Builder
Included in:
Builder
Defined in:
lib/saxerator/builder.rb,
lib/saxerator/builder/xml_builder.rb,
lib/saxerator/builder/hash_builder.rb,
lib/saxerator/builder/hash_element.rb,
lib/saxerator/builder/array_element.rb,
lib/saxerator/builder/empty_element.rb,
lib/saxerator/builder/string_element.rb

Defined Under Namespace

Classes: ArrayElement, EmptyElement, HashBuilder, HashElement, StringElement, XmlBuilder

Instance Method Summary collapse

Instance Method Details

#camel_case(str) ⇒ Object



13
14
15
16
17
# File 'lib/saxerator/builder.rb', line 13

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

#to_class(type) ⇒ Object



9
10
11
# File 'lib/saxerator/builder.rb', line 9

def to_class(type)
  Builder.const_get("#{camel_case(type)}Builder")
end

#valid?(type) ⇒ Boolean

Returns:

  • (Boolean)


5
6
7
# File 'lib/saxerator/builder.rb', line 5

def valid?(type)
  Builder.const_defined? "#{camel_case(type)}Builder"
end