def _format_detailed_actor(self, raw):
        doc = "#### {ns}.{name}({fargs})\n\n{short_desc}\n\n".format(fargs=self._format_args(raw['args']), **raw)
        doc += "%s\n\n" % raw['long_desc'] if raw['long_desc'] else ''
        if raw['type'] == 'component':
            doc += '\n##### Requires\n\n{req_list}\n'.format(req_list=', '.join(raw['requires']))
        if raw['inputs']:
            doc += '\n##### Inputs\n\n{ports}\n'.format(ports=self._list_ports(raw['inputs']))
        if raw['outputs']:
            doc += '\n##### Outputs\n\n{ports}\n'.format(ports=self._list_ports(raw['outputs']))
        return doc
dataset/ETHPy150Open EricssonResearch/calvin-base/calvin/actorstore/store.py/DocumentationStore._format_detailed_actor/original