class Graphlyte::Schema::Types::Defaults

Attributes

value[R]

Public Class Methods

new(value) click to toggle source
# File lib/graphlyte/schema/types/base.rb, line 6
def initialize(value)
  @value = value
end

Public Instance Methods

merge!(str) click to toggle source
# File lib/graphlyte/schema/types/base.rb, line 10
def merge!(str)
  parse_value(@value, str)
end
parse_value(value, str) click to toggle source
# File lib/graphlyte/schema/types/base.rb, line 14
def parse_value(value, str)
  if value.is_a?(Hash)
    str << "{ "
    value.each_with_index do |(k, v), idx|
      str << "#{k}: "
      parse_value(v, str)
      str << ", " if idx < (value.size - 1)
    end
    str << " }"
  elsif value.is_a?(Array)
    str << "["
    value.each_with_index do |item, idx|
      parse_value(item, str)
      str << ", " if idx < (value.size - 1)
    end
    str << "]"
  else
    str << "#{Arguments::Value.new(value).to_s}"
  end
end