$21 GRAYBYTE WORDPRESS FILE MANAGER $63

SERVER : premium201.web-hosting.com #1 SMP Wed Mar 26 12:08:09 UTC 2025
SERVER IP : 104.21.43.35 | ADMIN IP 216.73.216.23
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : NONE

/opt/cpanel/ea-ruby27/root/usr/share/ruby/ruby-2.7.8/did_you_mean/

HOME
Current File : /opt/cpanel/ea-ruby27/root/usr/share/ruby/ruby-2.7.8/did_you_mean//levenshtein.rb
module DidYouMean
  module Levenshtein # :nodoc:
    # This code is based directly on the Text gem implementation
    # Copyright (c) 2006-2013 Paul Battley, Michael Neumann, Tim Fletcher.
    #
    # Returns a value representing the "cost" of transforming str1 into str2
    def distance(str1, str2)
      n = str1.length
      m = str2.length
      return m if n.zero?
      return n if m.zero?

      d = (0..m).to_a
      x = nil

      # to avoid duplicating an enumerable object, create it outside of the loop
      str2_codepoints = str2.codepoints

      str1.each_codepoint.with_index(1) do |char1, i|
        j = 0
        while j < m
          cost = (char1 == str2_codepoints[j]) ? 0 : 1
          x = min3(
            d[j+1] + 1, # insertion
            i + 1,      # deletion
            d[j] + cost # substitution
          )
          d[j] = i
          i = x

          j += 1
        end
        d[m] = x
      end

      x
    end
    module_function :distance

    private

    # detects the minimum value out of three arguments. This method is
    # faster than `[a, b, c].min` and puts less GC pressure.
    # See https://github.com/ruby/did_you_mean/pull/1 for a performance
    # benchmark.
    def min3(a, b, c)
      if a < b && a < c
        a
      elsif b < c
        b
      else
        c
      end
    end
    module_function :min3
  end
end


Current_dir [ NOT WRITEABLE ] Document_root [ NOT WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
21 Mar 2024 10.21 AM
root / root
0755
core_ext
--
21 Mar 2024 10.21 AM
root / root
0755
experimental
--
21 Mar 2024 10.21 AM
root / root
0755
formatters
--
21 Mar 2024 10.21 AM
root / root
0755
spell_checkers
--
21 Mar 2024 10.21 AM
root / root
0755
experimental.rb
0.136 KB
30 Mar 2023 12.34 PM
root / root
0644
jaro_winkler.rb
1.79 KB
30 Mar 2023 12.34 PM
root / root
0644
levenshtein.rb
1.343 KB
30 Mar 2023 12.34 PM
root / root
0644
spell_checker.rb
1.169 KB
30 Mar 2023 12.34 PM
root / root
0644
tree_spell_checker.rb
3.38 KB
30 Mar 2023 12.34 PM
root / root
0644
verbose.rb
0.137 KB
30 Mar 2023 12.34 PM
root / root
0644
version.rb
0.041 KB
30 Mar 2023 12.34 PM
root / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025 CONTACT ME
Static GIF