Skip to main content

Extensible code style checker currently supporting Fortran, PSyclone DSL, etc

Project description

Stylist

The immediate need was for a code style checking tool which understood Fortran. Such things being quite thin on the ground. However very few large software projects are implemented in a single language. Thus a tool was developed which provided a framework to aid in delivering support for multiple languages and multiple style choices.

The framework supports multiple styles, each consisting of multiple rules. Each of these may be one of two types, those which treat the source as a text file and those which treat it as a parse tree.

The project is still in its infancy so only a few rules have been implemented and only for fortran.

Design

In the past we have used text based tools and there's a surprising amount you can do with regular expressions. However once context becomes important they can become a liability. In those cases it is much better to have the parse tree.

At the moment the tool is only able to flag up where a style rule has been broken. For some things this is the best we can hope for but for others we might aspire to correct the problem.

For instance the current check for missing implicit none statements might, in the future, insert them where they are missing.

Some UML class diagrams have been prepared which may be found in the documentation directory. These make use of the PlantUML tool to render.

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

stylist-0.1.tar.gz (15.4 kB view details)

Uploaded Source

Built Distribution

stylist-0.1-py3-none-any.whl (14.7 kB view details)

Uploaded Python 3

File details

Details for the file stylist-0.1.tar.gz.

File metadata

  • Download URL: stylist-0.1.tar.gz
  • Upload date:
  • Size: 15.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.1.post20191125 requests-toolbelt/0.9.1 tqdm/4.39.0 CPython/3.7.4

File hashes

Hashes for stylist-0.1.tar.gz
Algorithm Hash digest
SHA256 e178164596e20e719a8b15963ad37369c85beec356a652314e878d8173da505d
MD5 3fd53dd12de5b3f64f4f772ed3635822
BLAKE2b-256 0572a11f1f0ec5316effe6945eef2f15419b5fd988bb1dde049d1b17d0129b1c

See more details on using hashes here.

File details

Details for the file stylist-0.1-py3-none-any.whl.

File metadata

  • Download URL: stylist-0.1-py3-none-any.whl
  • Upload date:
  • Size: 14.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.1.post20191125 requests-toolbelt/0.9.1 tqdm/4.39.0 CPython/3.7.4

File hashes

Hashes for stylist-0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3279112085eb38cd114c61851e2a4ba926df847b0398253fcaa068451de555a1
MD5 2f50a982eb60850739c0a2fbc6e87ad0
BLAKE2b-256 2cf784a382c2f61ae0ae30e3f6d781fc63bad7630250abeae7f4f986c483249c

See more details on using hashes here.

Supported by

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