Sha256: b9df93127e79d1f2069a7892facea3ae4e9d9ced11e8495c05e24c4a7c4b190e
Contents?: true
Size: 872 Bytes
Versions: 22
Compression:
Stored size: 872 Bytes
Contents
module PublicSuffix # Monkey Patch to include the match logic class Domain # For Sanity def ==(other) name == other.name end # TODO: better code for this method # rubocop:disable all def match(pattern) pattern = PublicSuffix.parse(pattern) unless pattern.is_a?(PublicSuffix::Domain) return name == pattern.name unless pattern.trd return false unless tld == pattern.tld && sld == pattern.sld pattern_trds = pattern.trd.split('.') domain_trds = trd.split('.') case pattern_trds.first when '*' pattern_trds[1..pattern_trds.size] == domain_trds[1..domain_trds.size] when '**' pa = pattern_trds[1..pattern_trds.size] domain_trds[domain_trds.size - pa.size, pa.size] == pa else name == pattern.name end end # rubocop:enable all end end
Version data entries
22 entries across 22 versions & 1 rubygems