class SnippetFinder

def find(id)

def find(id)
  find_map('find',id)
end

def find_by_name(name)

def find_by_name(name)
  find_map('find_by_name', name)
end

def find_map(meth, *args)

def find_map(meth, *args)
  finder_types.find{|type|
    found = type.send(meth, *args)
    return found if found
  }
end

def finder_types

def finder_types
  [Snippet]
end