Make types work in placeholder parser

This requires the parser to take an option object.
Add support for class member variable