class Shale::Type::Base

Base class for all types

@example

class MyType < Shale::Type::Base
  ... overwrite methods as needed
end

@api public

Public Class Methods

as_hash(value) click to toggle source

Convert value to form accepted by Hash document

@param [any] value

@return [any]

@api private

# File lib/shale/type/base.rb, line 44
def as_hash(value)
  value
end
as_json(value) click to toggle source

Convert value to form accepted by JSON document

@param [any] value

@return [any]

@api private

# File lib/shale/type/base.rb, line 66
def as_json(value)
  value
end
as_xml(value, name, doc) click to toggle source

Convert value to form accepted by XML document

@param [#to_s] value Value to convert to XML @param [String] name Name of the element @param [Shale::Adapter::<XML adapter>::Document] doc Document

@api private

# File lib/shale/type/base.rb, line 110
def as_xml(value, name, doc)
  element = doc.create_element(name)
  doc.add_text(element, value.to_s)
  element
end
as_yaml(value) click to toggle source

Convert value to form accepted by YAML document

@param [any] value

@return [any]

@api private

# File lib/shale/type/base.rb, line 88
def as_yaml(value)
  value
end
cast(value) click to toggle source

Cast raw value to a type. Base form just returns whatever it receives

@param [any] value Value to cast

@return [any]

@api private

# File lib/shale/type/base.rb, line 22
def cast(value)
  value
end
out_of_hash(value) click to toggle source

Extract value from Hash document

@param [any] value

@return [any]

@api private

# File lib/shale/type/base.rb, line 33
def out_of_hash(value)
  value
end
out_of_json(value) click to toggle source

Extract value from JSON document

@param [any] value

@return [any]

@api private

# File lib/shale/type/base.rb, line 55
def out_of_json(value)
  value
end
out_of_xml(node) click to toggle source

Extract value from XML document

@param [Shale::Adapter::<XML adapter>::Node] value

@return [String]

@api private

# File lib/shale/type/base.rb, line 99
def out_of_xml(node)
  node.text
end
out_of_yaml(value) click to toggle source

Extract value from YAML document

@param [any] value

@return [any]

@api private

# File lib/shale/type/base.rb, line 77
def out_of_yaml(value)
  value
end