class PgSearch::Features::DMetaphone::Normalizer

Decorates a normalizer with dmetaphone processing.

Attributes

normalizer_to_wrap[R]

Public Class Methods

new(normalizer_to_wrap) click to toggle source
# File lib/pg_search/features/dmetaphone.rb, line 24
def initialize(normalizer_to_wrap)
  @normalizer_to_wrap = normalizer_to_wrap
end

Public Instance Methods

add_normalization(original_sql) click to toggle source
# File lib/pg_search/features/dmetaphone.rb, line 28
def add_normalization(original_sql)
  otherwise_normalized_sql = Arel.sql(
    normalizer_to_wrap.add_normalization(original_sql)
  )

  Arel::Nodes::NamedFunction.new(
    "pg_search_dmetaphone",
    [otherwise_normalized_sql]
  ).to_sql
end