Sha256: 0f66b0955353ae0d59bf9cf71ca0dbe68d08772ac1de576aa7c42ab66ca57bba

Contents?: true

Size: 1.19 KB

Versions: 22

Compression:

Stored size: 1.19 KB

Contents

require 'facet/string/bracket'

class String

  # Return a new string embraced by given quotes.
  # If no quotes are specified, then assumes single quotes.
  #
  #   "quote me".quote     #=> "'quote me'"
  #   "quote me".quote(2)  #=> "\"quote me\""
  #
  def quote(type=:s)
    case type.to_s.downcase
    when 's', 'single'
      bracket("'")
    when 'd', 'double'
      bracket('"')
    when 'b', 'back'
      bracket('`')
    else
      bracket("'")
    end
  end

end


#  _____         _
# |_   _|__  ___| |_
#   | |/ _ \/ __| __|
#   | |  __/\__ \ |_
#   |_|\___||___/\__|
#
=begin test

  require 'test/unit'

  class TCString < Test::Unit::TestCase

    def setup
      @a =  "hi"
    end

    def test_001
      assert_raises( ArgumentError ) { @a.quote(1,2) }
    end

    def test_002
      assert_equal( %{'hi'}, @a.quote )
    end

    def test_003
      assert_equal( %{"hi"}, @a.quote(:d) )
      assert_equal( %{"hi"}, @a.quote(:double) )
    end

    def test_004
      assert_equal( %{'hi'}, @a.quote(:s) )
      assert_equal( %{'hi'}, @a.quote(:single) )
    end

    def test_005
      assert_equal( %{`hi`}, @a.quote(:b) )
      assert_equal( %{`hi`}, @a.quote(:back) )
    end

  end

=end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
facets-1.0.0 lib/facet/string/quote.rb
facets-1.0.3 packages/core/lib/facet/string/quote.rb
facets-1.2.0 lib/facets/core/string/quote.rb
facets-1.3.0 lib/facets/core/string/quote.rb
facets-1.2.1 lib/facets/core/string/quote.rb
facets-1.1.0 lib/facet/string/quote.rb
facets-1.3.1 lib/facets/core/string/quote.rb
facets-1.3.3 lib/facets/core/string/quote.rb
facets-1.3.2 lib/facets/core/string/quote.rb
facets-1.4.1 lib/facets/core/string/quote.rb
facets-1.4.2 lib/facets/core/string/quote.rb
facets-1.4.0 lib/facets/core/string/quote.rb
facets-1.4.3 lib/facets/core/string/quote.rb
facets-1.4.5 lib/facets/core/string/quote.rb
facets-1.4.4 lib/facets/core/string/quote.rb
facets-1.7.38 lib/facets/core/string/quote.rb
facets-1.7.0 lib/facets/core/string/quote.rb
facets-1.7.30 lib/facets/core/string/quote.rb
facets-1.7.46 lib/facets/core/string/quote.rb
facets-1.8.0 lib/facets/core/string/quote.rb