class Mangadex::MangadexObject
Public Class Methods
attributes_to_inspect()
click to toggle source
# File lib/mangadex/mangadex_object.rb, line 9 def self.attributes_to_inspect to_inspect = [:id, :type] if self.respond_to?(:inspect_attributes) to_inspect.concat(Array(self.inspect_attributes)) end to_inspect end
new(**args)
click to toggle source
# File lib/mangadex/mangadex_object.rb, line 18 def initialize(**args) args.keys.each do |attribute| original_attribute = attribute attribute = Mangadex::Utils.underscore(attribute.to_s) attribute_to_set = "#{attribute}=" if respond_to?(attribute_to_set) if %w(created_at updated_at publish_at).include?(attribute) args[original_attribute] = DateTime.parse(args[original_attribute]) end send(attribute_to_set, args[original_attribute]) else warn("Ignoring setter `#{attribute_to_set}` on #{self.class.name}...") end end self.type = self.class.type if self.type.blank? end
Public Instance Methods
eq?(other)
click to toggle source
Calls superclass method
# File lib/mangadex/mangadex_object.rb, line 38 def eq?(other) return id == other.id if respond_to?(:id) && other.respond_to?(:id) super end
hash()
click to toggle source
# File lib/mangadex/mangadex_object.rb, line 44 def hash id.hash end
inspect()
click to toggle source
# File lib/mangadex/mangadex_object.rb, line 48 def inspect string = "#<#{self.class.name}:#{self.object_id} " fields = self.class.attributes_to_inspect.map do |field| value = self.send(field) if !value.nil? "@#{field}=\"#{value}\"" end rescue => error "@#{field}[!]={#{error.class.name}: #{error.message}}" end.compact string << fields.join(" ") << ">" end