def format_string(self, fmat_string):
try:<EOL><INDENT>return fmat_string.format(**vars(self))<EOL><DEDENT>except KeyError as e:<EOL><INDENT>raise ValueError('<STR_LIT>'<EOL>'<STR_LIT>'.format(repr(fmat_string),<EOL>repr(e)))<EOL><DEDENT>
Takes a string containing 0 or more {variables} and formats it
according to this instance's attributes.

:param fmat_string: A string, e.g. '{name}-foo.txt'
:type fmat_string: ``str``

:return: The string formatted according to this instance. E.g.
         'production-runtime-foo.txt'
:rtype: ``str``