Is it possible to dump an arbitrary LibCST node into Python code? My use case is that I want to extract the code for functions that match a specific naming scheme. I can extract the FunctionDef
nodes that I need, but I don't seem to find a way to convert them to code.
It is possible using the method code_for_node
from the Module
class.
You use it as follow:
import libcstfunction_def = libcst.parse_statement("def hello_world():\n print('Hello World')")
print(libcst.Module([]).code_for_node(function_def))
and that would generate the output:
def hello_world():print('Hello World')