public static List<NameableObject> asList(Collection<? extends NameableObject> collection){
  List<NameableObject> list=new ArrayList<>();
  list.addAll(collection);
  return list;
}

public static List < NameableObject > asList ( Collection < ? extends NameableObject > collection ) { List < NameableObject > list = new ArrayList < > ( ) ; list . addAll ( collection ) ; return list ; }
returns a list with erasure nameableobject based on the given collection .
