Sha256: 5b96cdd29bf90261855e38e126c8e6c8f521481ae0e8925cae10489f286d2f89
Contents?: true
Size: 927 Bytes
Versions: 1
Compression:
Stored size: 927 Bytes
Contents
require "virtus" require "rubycritic/core/location" module Rubycritic class Smell include Virtus.model attribute :context attribute :locations attribute :message attribute :score attribute :type attribute :status def at_pathname?(other_pathname) pathnames.any? { |pathname| pathname == other_pathname } end def at_location?(other_location) locations.any? { |location| location == other_location } end def has_multiple_locations? locations.length > 1 end def ==(other) self.class == other.class && state == other.state end alias_method :eql?, :== def to_s "(#{type}) #{context} #{message}" end def hash state.hash end protected def state [@context, @message, @score, @type] end private def pathnames @pathnames ||= locations.map(&:pathname).uniq end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rubycritic-0.0.14 | lib/rubycritic/core/smell.rb |