Class: CommandTower::Deserializers::Clients::Types::IntegerType

Inherits:
Type
  • Object
show all
Includes:
Singleton
Defined in:
app/deserializers/command_tower/deserializers/clients/types.rb

Instance Method Summary collapse

Instance Method Details

#call(value, path:) ⇒ Object



87
88
89
90
91
92
93
94
95
96
97
98
99
# File 'app/deserializers/command_tower/deserializers/clients/types.rb', line 87

def call(value, path:)
  return value if value.is_a?(Integer)

  if value.is_a?(String)
    begin
      return Integer(value, 10)
    rescue ArgumentError
      reject!(path, value, "integer", "not a whole-number string")
    end
  end

  reject!(path, value, "integer", "expected Integer")
end

#expected_label ⇒ Object



101
102
103
# File 'app/deserializers/command_tower/deserializers/clients/types.rb', line 101

def expected_label
  "integer"
end