muster
package
muster
Type Members
-
-
-
-
-
-
-
class
EndOfInput extends Throwable with NoStackTrace
-
-
-
class
Helper[C <: Context] extends AnyRef
-
-
-
-
-
-
case class
ParseLocation(line: Int, col: Int, source: Option[String] = scala.None) extends Product with Serializable
-
-
-
-
-
-
Value Members
-
object
BuildInfo extends Product with Serializable
-
val
ByteArrayConsumable: muster.input.ByteArrayConsumable.type
-
-
val
ByteBufferConsumable: muster.input.ByteBufferConsumable.type
-
-
val
ByteChannelConsumable: muster.input.ByteChannelConsumable.type
-
val
ByteChannelProducible: muster.output.ByteChannelProducible.type
-
-
-
val
FileConsumable: muster.input.FileConsumable.type
-
val
FileProducible: muster.output.FileProducible.type
-
val
InputStreamConsumable: muster.input.InputStreamConsumable.type
-
-
val
OutputStreamProducible: muster.output.OutputStreamProducible.type
-
-
-
val
ReaderConsumable: muster.input.ReaderConsumable.type
-
val
StringConsumable: muster.input.StringConsumable.type
-
-
val
URLConsumable: muster.input.URLConsumable.type
-
val
WriterProducible: muster.output.WriterProducible.type
-
package
ast
-
-
-
-
Inherited from AnyRef
Inherited from Any
Muster is a library that leverages macros to generate serializers for your objects
A library for macro based serializers to different formats. It uses scala macros so no reflection is involved and it will generate code at compile time that kind of looks like it would have been handwritten. It is written with the idea of extension, so it's easy to add your own formats.
You can find more documentation on the wiki
Getting the library
This works with scala 2.10 and up. Check the releases page for the latest version. The library is published to maven central so you can get it with:
Prettier case class for debugging:
Bring your own AST (BYA):