playframework/Play20 — pull request #320 by julienrf (2012-05-16 22:08:27+00:00)
Title: Fix PathBindable#javascriptUnbind for some instances

This commit fixes the javascript reverse router so it can now be used with routes taking `Option`, `Boolean` or `List` parameters.

Provided the following routes definitions:
```
GET /foo controllers.App.list(x: List[Int])
GET /bar controllers.App.bool(b: Boolean)
GET /baz controllers.App.option(x: Option[Boolean])
```

The javascript reverse router now allows to write the following code:
```javascript
routes.controllers.App.list([1, 2, 3]).url; // '/foo?x=1&x=2&x=3'
routes.controllers.App.bool(true).url; // '/bar?b=1'
```
Binders can be composed so the following works as expected:
```javascript
routes.controllers.App.option(null).url; // '/baz'
routes.controllers.App.option().url; // '/baz'
routes.controllers.App.option(false).url; // '/baz?x=0'
routes.controllers.App.option(true).url; // '/baz?x=1'
```

BTW I removed again `PathBindable[Option]` instances which have been accidentally re-inserted by merging a pull request.