Skip to main content

Static analysis tools for Fortran, written in pure Python

Project description

fsource - Fortran static analysis tool

Tests PyPI

fsource is a collection of tools allowing you to parse Fortran 77 through Fortran 2008 programs. It is written in pure Python and has no external dependencies.

You install fsource via pip:

$ pip install fsource

or simply download the source, since there are no external dependencies (note that you should use bin/fsource instead of fsource in this case).

fsource currently features a command line interface:

  • a parser, which takes a Fortran file and outputs an abstract syntax tree (for the definitions) allowing you to extract modules, subprograms, derived types, parameters, etc.:

    $ fsource parse FILE.f90
    
  • a wrapper, which builds on the Fortran parser to extract module variables, types and subroutines which can be interfaced with C and generates header files for them:

    $ fsource wrap FILE.f90
    
  • a line splicer and a lexer, low-level tools which split a Fortran file into a set of logical lines and tokens, respectively. This allows you to set up your parsing infrastructure on top of fsource:

    $ fsource splice FILE.f90
    $ fsource lex FILE.f90
    

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

fsource-0.5.tar.gz (30.9 kB view details)

Uploaded Source

File details

Details for the file fsource-0.5.tar.gz.

File metadata

  • Download URL: fsource-0.5.tar.gz
  • Upload date:
  • Size: 30.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.3.1 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for fsource-0.5.tar.gz
Algorithm Hash digest
SHA256 86d03a3b57d558e59e2803a2e125c7c23d447fcdcc3def00b331faca61ae3626
MD5 667b6272fda354ea7b22b93790edef7a
BLAKE2b-256 fbfbb4256e013fc4d929f183929bff6eaed0b0467332a18d6e5ac9637de7e910

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