class Net::IMAP::ClientID
:nodoc:
def format_internal(client_id)
def format_internal(client_id) return nil if client_id.nil? client_id.to_h.flat_map {|k,v| [StringFormatter.string(k), StringFormatter.nstring(v)] } end
def initialize(data)
def initialize(data) @data = data end
def send_data(imap, tag)
def send_data(imap, tag) imap.__send__(:send_data, format_internal(@data), tag) end
def validate
def validate validate_internal(@data) end
def validate_internal(client_id)
def validate_internal(client_id) client_id.to_h.each do |k,v| unless StringFormatter.valid_string?(k) raise DataFormatError, client_id.inspect end end rescue NoMethodError, TypeError # to_h failed raise DataFormatError, client_id.inspect end