I'm a bit perplexed about what use this package is,
- adding contraint's that throw exceptions / errors when adding to arrays, appears to be just hiding code, and supprising coders.. - (I would probably be pissed if I had to edit someone's code who had used this).
- Exception file looks very cluttered. All that @licence, @author on each class is a huge overkill?
- Not sure the name 'ArrayOf' really defines what the class is supposed to do, or it's purpose. - (It's purpose being a little unclear...)
I'm tempted to -1 it.. but not so aggreesive in my old age ;)