Sha256: 0b845264cab482beba399e32084cfa10b4a8c4691f1ecf5d8292ea933033398e

Contents?: true

Size: 523 Bytes

Versions: 30

Compression:

Stored size: 523 Bytes

Contents

# frozen_string_literal: true

class ReeString::Deconstantize
  include Ree::FnDSL

  fn :deconstantize

  doc(<<~DOC)
    Removes the rightmost segment from the constant expression in the string.

      deconstantize('Net::HTTP')   # => "Net"
      deconstantize('::Net::HTTP') # => "::Net"
      deconstantize('String')      # => ""
      deconstantize('::String')    # => ""
      deconstantize('')            # => ""
  DOC
  contract(String => String)
  def call(path)
    path.to_s[0, path.rindex("::") || 0]
  end
end

Version data entries

30 entries across 30 versions & 1 rubygems

Version Path
ree_lib-1.0.124 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.123 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.122 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.121 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.120 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.119 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.118 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.117 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.116 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.115 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.114 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.113 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.112 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.111 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.110 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.109 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.108 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.107 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.106 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb
ree_lib-1.0.105 lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb