tree bfd79ead1253e67c38f4198ff63619ce1fad6c81
parent d8840cbb2baa915f4836edda4750050a2c0b7aea
author Ernesto Jiménez <me@ernesto-jimenez.com> 1415497337 +0000
committer Will Norris <willnorris@google.com> 1429048128 -0700

Better support for array and struct serialization

This patch allows better encoding of nested structs and arrays to follow
[conventions followed by frameworks like Rails][1] when parsing query
strings such as ```ids[]=1&ids[]=2&ids[]=3``` for arrays and
```user[name]=acme&user[addr][postcode]=1234&user[addr][city]=SFO``` for
hashes.

Changes:

 * Encode nested attributes: ```Parameter.Nested.Value = "str"``` would
 be encoded as ```parameter[nested][value]=str```
 * New ```brackets``` tag option for arrays so that in stead of encoding
 an array as ```a=one&a=two``` it's encoded as ```a[]=one&a[]=two```
 which are read

[1]: http://guides.rubyonrails.org/action_controller_overview.html#hash-and-array-parameters
