Skip to main content

Transform python source into ast module calls

Project description

ast2call

Mostly exists as a helper for other projects I'm working on.

Input: python source

Output: python source, that would be the equivalent of calling ast.parse on the input

E.g.

print('hello world!')

-->

ast.Module(body=[ast.Expr(value=ast.Call(func=ast.Name(id='print', ctx=ast.Load(), lineno=None), args=[ast.Constant(value='hello world!', kind=None, lineno=None)], keywords=[], lineno=None), lineno=None)], type_ignores=[])

Usage:

$ ast2call hello_world.py
ast.Module(body=[ast.Expr(value=ast.Call(func=ast.Name(id='print', ctx=ast.Load(), lineno=None), args=[ast.Constant(value='hello world!', kind=None, lineno=None)], keywords=[], lineno=None), lineno=None)], type_ignores=[])
>>> import ast2call
>>> import ast
>>> ast2call.ast2call(ast.parse('print("hello world!")'))
<ast.Call object at 0x7fc98a773250>
>>> ast2call.astprint('print("hello world!")')
"ast.Module(body=[ast.Expr(value=ast.Call(func=ast.Name(id='print', ctx=ast.Load(), lineno=None), args=[ast.Constant(value='hello world!', kind=None, lineno=None)], keywords=[], lineno=None), lineno=None)], type_ignores=[])"

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ast2call-0.1.0.tar.gz (2.1 kB view details)

Uploaded Source

File details

Details for the file ast2call-0.1.0.tar.gz.

File metadata

  • Download URL: ast2call-0.1.0.tar.gz
  • Upload date:
  • Size: 2.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.2

File hashes

Hashes for ast2call-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d7e9199e4314898c45d6f33b020ee9149f490bcb4a151bd7ce2de9c811aceee4
MD5 4281ea73f4db70aa005dfee1cc2cd754
BLAKE2b-256 c431c3c838dd9cc332702968d0295c51f6bc4fa25c024eb69925f51302234a0d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page