florianb / fsource

Fortran static analysis tool written in pure Python

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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 (you may want to append --user flag to install it just for you or --prefix=/install/path to choose the installation location):

$ pip install fsource

You can also simply download the source, since there are no external dependencies.

$ git clone github.com/mwallerb/fsource
$ cd fsource

In this case you should run bin/fsource instead of fsource, which augments the python path with the downloaded source files.

Command line interface

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
    

About

Fortran static analysis tool written in pure Python

License:Other


Languages

Language:Python 97.4%Language:Fortran 2.6%