class TextFilter

def descendants_names

def descendants_names
  descendants.map { |s| s.filter_name }.sort
end

def filter(text)

def filter(text)
  text
end

def filter(text)

def filter(text)
  instance.filter(text)
end

def find_descendant(filter_name)

def find_descendant(filter_name)
  descendants.each do |s|
    return s if s.filter_name == filter_name
  end
  nil
end

def inherited(subclass)

def inherited(subclass)
  subclass.filter_name = subclass.name.to_name('Filter')
end