Fortran

The ppci.lang.fortran module contains functionality to deal with fortran code.

Warning

This module is a work in progress.

Module

This is the fortran frontend.

Currently this front-end is a work in progress.

ppci.lang.fortran.fortran_to_ir(source)

Translate fortran source into IR-code

class ppci.lang.fortran.FortranParser

Parse some fortran language

parse(src)

parse a piece of FORTRAN77

parse_assignment()

Parse an assignment

parse_declaration()

Parse variable declarations

parse_end()

Parse end statement

parse_expression(bp=0)

Welcome to expression parsing!

Solve this using precedence parsing with binding power.

parse_fmt_spec()

Parse a format specifier

parse_for()

Parse a for loop statement

parse_format()

Parse a format statement

parse_go()

Parse go to syntax

parse_label_ref()

Parse a label reference, this can be a number or.. a variable?

parse_program()

Parse a program

parse_unit_spec()

Parse a unit (file) specifier

class ppci.lang.fortran.Visitor

Visit ast nodes

class ppci.lang.fortran.Printer
print(node)

Print the AST