def __init__(<EOL>self, definitions, token_handler,<EOL>layout_handlers, deferrable_handlers,<EOL>indent_str='<STR_LIT:U+0020>', newline_str='<STR_LIT:\n>'):
self.__token_handler = token_handler<EOL>self.__layout_handlers = {}<EOL>self.__layout_handlers.update(layout_handlers)<EOL>self.__deferrable_handlers = {}<EOL>self.__deferrable_handlers.update(deferrable_handlers)<EOL>self.__definitions = {}<EOL>self.__definitions.update(definitions)<EOL>self.__indent_str = indent_str<EOL>self.__newline_str = newline_str<EOL>self.__optimized_definitions = self.optimize()<EOL>
The constructor takes three arguments.

definitions
    A mapping from the names of a Node to their definitions; a
    definition is a tuple of rules for describing how a
    particular Node should be rendered.  The Nodes are described
    in the asttypes module, while the Rules are described in the
    pptypes module.

token_handler
    The handler that will deal with tokens.  It must be a
    callable that accepts four arguments

    token
        the token instance that will do the invocation
    dispatcher
        an instance of this class
    node
        a Node instance (from asttypes)
    value
        the value that was derived by the token based on its
        implementation.

layout_handlers
    A map (dictionary) from Layout types to the handlers, which
    are callables that accepts these five arguments

    dispatcher
        an instance of this class
    node
        an asttypes.Node instance.
    before
        a value that was yielded by the previous token
    after
        a value to be yielded by the subsequent token
    prev
        the previously yielded layout token

deferrable_handlers
    A map (dictionary) from Deferrable types to the handlers,
    which are callables that accepts these two arguments

    dispatcher
        an instance of this class
    node
        an asttypes.Node instance.

indent_str
    The string used to indent a line with.  Default is '  '.
    This attribute will be provided as the property
    ``indent_str``.

newline_str
    The string used for renderinga new line with.  Default is
    <LF> (line-feed, or '\\n').  This attribute will be provided
    as the property ``newline_str``.