Google

# File lib/rmail/address.rb, line 201
    def format
      display_name = if @display_name.nil?
                       nil
                     elsif @display_name =~ /^[-\/\w=!#\$%&'*+?^`{|}~ ]+$/
                       @display_name
                     else
                       '"' + @display_name.gsub(/["\\]/, '\\\\\&') + '"'
                     end
      local = if (@local !~ /^[-\w=!#\$%&'*+?^`{|}~\.\/]+$/ ||
                  @local =~ /^\./ ||
                  @local =~ /\.$/ ||
                  @local =~ /\.\./)
                '"' + @local.gsub(/["\\]/, '\\\\\&') + '"'
              else
                @local
              end
      domain = if (!@domain.nil? and
                   (@domain !~ /^[-\w=!#\$%&'*+?^`{|}~\.\/]+$/ ||
                    @domain =~ /^\./ ||
                    @domain =~ /\.$/ ||
                    @domain =~ /\.\./))
               then
                 '[' + if @domain =~ /^\[(.*)\]$/
                         $1
                       else
                         @domain
                       end.gsub(/[\[\]\\]/, '\\\\\&') + ']'
               else
                 @domain
               end
      address = if domain.nil?
                  local
                elsif !display_name.nil? or domain[-1] == ?]
                  '<' + local + '@' + domain + '>'
                else
                  local + '@' + domain
                end
      comments = nil
      comments = unless @comments.nil?
                   @comments.collect { |c|
          '(' + c.gsub(/[()\\]/, '\\\\\&') + ')'
        }.join(' ')
                 end
      [display_name, address, comments].compact.join(' ')
    end