Thanks Naftoli, is this what you mean?
def findAll[T <: LongKeyedMapper[T]] (metaObject: LongKeyedMetaMapper[T]): List[T] = { metaObject.findAll } **val users:List[User] = findAll[User](User) still get **-> type arguments [com.udorse.lift.model.User] do not conform to method findAll's type parameter bounds [T <: net.liftweb.mapper.LongKeyedMapper[T]] On Aug 6, 3:30 pm, Naftoli Gugenheim <naftoli...@gmail.com> wrote: > Pull M out as a type parameter and just declare the value parameter to be > whatever M means. > > ------------------------------------- > > Ross Mellgren<dri...@gmail.com> wrote: > > What complaint does the compiler have? > > -Ross > > On Aug 6, 2009, at 2:06 PM, jon wrote: > > > > > > > I'd like to do something like > > > def findAll[T <: LongKeyedMapper[T],M <: LongKeyedMetaMapper[T]] > > (metaObject: M): List[T] = { > > metaObject.findAll > > } > > > val users:List[User] = findAll(User) > > val foos:List[Foo] = findAll(Foo) > > > But the compiler won't have it. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~----------~----~----~----~------~----~------~--~---