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