Sha256: 5e1358703f2815f5ecf82225eedb22591cc1ab7cbf95c5e596ec2cbd1f324b79

Contents?: true

Size: 676 Bytes

Versions: 125

Compression:

Stored size: 676 Bytes

Contents

# frozen_string_literal: true

class ReeString::Demodulize
  include Ree::FnDSL

  fn :demodulize

  doc(<<~DOC)
    Removes the module part from the expression in the string.
    
      demodulize('ActiveSupport::Inflector::Inflections') # => "Inflections"
      demodulize('Inflections')                           # => "Inflections"
      demodulize('::Inflections')                         # => "Inflections"
      demodulize('')                                      # => ""
    
    See also #deconstantize.
  DOC
  contract(String => String)
  def call(path)
    path = path.to_s

    if i = path.rindex("::")
      path[(i + 2)..-1]
    else
      path
    end
  end
end

Version data entries

125 entries across 125 versions & 1 rubygems

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