scalabeans


Scala reflection and serialization library

Introduction

ScalaBeans is a reflection library for Scala. Its aims are similar to JavaBeans, but scala-specific features have been added:

  • Recognizes scala properties
  • Can handle immutable and case classes
  • Scala collections are supported, including builders
  • Preserve generic type information
  • Type pattern matching (including generic type arguments)
  • High performance serialization to/from protobuf, json, xml (using http://protostuff.googlecode.com'>protostuff)

ScalaBeans is also a set of agreements on how Scala language constructs can be interpreted from the reflection point of view. It provides answers to such questions as: what is a property? how object can be instantiated at runtime? how to construct collections at runtime? and many others.

We believe that having all this questions been sorted out and implemented in a fast and robust library provides Scala folks with powerful gears for developing amazing new technologies. Areas traditionally occupied by reflection are serialization, persistence, GUI frameworks. It is just so much easier to say: "hey, here is my object, would you like to save it in the database?" and write one line of code than write boiler-plate code for each and every property of your bean. ScalaBeans makes it possible.

Read Getting Started, or skip to Documentation about bean properties, constructors, type information, serialization details.

Project Information

The project was created on Apr 13, 2011.

Labels:
Scala reflection serialization beans scalastuff protobuf