1 2 3 4 5 6 7 8 9 10 11 12 13
# frozen_string_literal: true module SignatureType TYPES = %i[gpg ssh x509].freeze def type raise NoMethodError, 'must implement `type` method' end TYPES.each do |type| define_method("#{type}?") { self.type == type } end end