moved exposed utility functions into utils namespace; renamed help -> info; added new help
This commit is contained in:
@ -13,8 +13,9 @@ class RPCServer(xrs.DocXMLRPCServer):
|
||||
self.server_name = doc_title_suffix + " " + self.server_name
|
||||
self.server_title = doc_title_suffix + " " + self.server_title
|
||||
|
||||
self.register_function(self.ping)
|
||||
self.register_function(self.help)
|
||||
self.register_function(self.ping, name="utils.ping")
|
||||
self.register_function(self.help, name="utils.help")
|
||||
self.register_function(self.info, name="utils.info")
|
||||
|
||||
|
||||
def ping(self):
|
||||
@ -25,6 +26,22 @@ class RPCServer(xrs.DocXMLRPCServer):
|
||||
|
||||
|
||||
def help(self):
|
||||
"""
|
||||
Returns an overview of exposed functions incl. signatures and docstrings.
|
||||
"""
|
||||
info = self.info()
|
||||
lines = []
|
||||
for name, item in info.items():
|
||||
sig = item["signature"]
|
||||
head = f"{name}{sig}:"
|
||||
underline = "-" * len(head)
|
||||
doc = item["docstring"]
|
||||
doc = str(doc) # take care of None
|
||||
lines += [head, underline, doc, ""]
|
||||
return "\n".join(lines)
|
||||
|
||||
|
||||
def info(self):
|
||||
"""
|
||||
Returns a dict mapping names of exposed functions to dicts holding their signature and docstring.
|
||||
"""
|
||||
|
Reference in New Issue
Block a user