Sha256: 9590e4a0f0ef14fc1c77b0dc4af02c7a524ed95e433df4e8689e240b89cf70a5

Contents?: true

Size: 783 Bytes

Versions: 1

Compression:

Stored size: 783 Bytes

Contents

class Nomen
  module Formatters
    class Inverted

      def self.format(name)
        String.new.tap do |str|
          if name.last && !name.last.empty?
            if [name.first, name.middle, name.suffix].reject(&:nil?).reject(&:empty?).any?
              str << "#{name.last},"
            else
              str << name.last
            end
          end
          if name.first && !name.first.empty?
            str << (str.empty? ? name.first : " #{name.first}")
          end
          if name.middle && !name.middle.empty?
            str << (str.empty? ? name.middle : " #{name.middle}")
          end
          if name.suffix && !name.suffix.empty?
            str << (str.empty? ? name.suffix : " #{name.suffix}")
          end
        end
      end

    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
nomen-0.0.2 lib/nomen/formatters/inverted.rb