Scala清单和实例

时间:2012-03-25 05:31:25

标签: scala

我正在使用Jerkson,我需要检查一个给定的类是否可以序列化。 java版本只需要一个类,但是jerkson这样做:

 def canSerialize[A](implicit mf: Manifest[A]) = mapper.canSerialize(mf.erasure)

鉴于我有一个实例,我怎么称呼这个?我差点试过

canSerialize[ClassManifest.fromClass(foo)]

但它不起作用。我想知道为什么jerkson的人不能通过这样做来简化:canSerialize(Class [_])...

关于如何调用此内容的任何想法?

编辑:

我使用以下方法解决了这个问题:

canSerilialize(Manifest.classType(foo.getClass))

2 个答案:

答案 0 :(得分:3)

这个怎么样:

canSerialize[Foo]

编译器可以自动为您生成清单(如果它在上下文中有足够的类型信息)

由于Scala 2.8.0 canSerialize可以通过上下文绑定编写。见more

答案 1 :(得分:0)

如果您事先不知道该课程,您可以随时将清单作为参数传递,即这应该有效:canSerialize( Manifest.classType( foo.getClass ) )