Class: Graphene::Size

Inherits:
Object
  • Object
show all
Defined in:
lib/graphene1/size.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ Size

Returns a new instance of Size.



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

def initialize(*args)
  super()
  case args.size
  when 0
  when 1
    arg = args[0]
    case arg
    when Size
      init_from_size(arg)
    else
      raise ArgumentError, "source must be Graphene::Size: #{arg.inspect}"
    end
  when 2
    init(*args)
  else
    message = +"wrong number of arguments "
    message << "(given #{args.size}, expected 0..2)"
    raise ArgumentError, message
  end
end

Class Method Details

.try_convert(value) ⇒ Object



20
21
22
23
24
25
26
27
28
# File 'lib/graphene1/size.rb', line 20

def try_convert(value)
  case value
  when Array
    return nil unless value.size == 2
    new(*value)
  else
    nil
  end
end

Instance Method Details

#initialize_rawObject



31
# File 'lib/graphene1/size.rb', line 31

alias_method :initialize_raw, :initialize

#to_aObject



53
54
55
# File 'lib/graphene1/size.rb', line 53

def to_a
  [width, height]
end