62 releases

0.5.34 Nov 30, 2022
0.5.30 Oct 15, 2022
0.5.27 Jun 21, 2022
0.5.18 Mar 25, 2022
0.4.0 Nov 28, 2021

#5 in #dataflow

Download history 144/week @ 2022-10-15 50/week @ 2022-10-22 95/week @ 2022-10-29 71/week @ 2022-11-05 98/week @ 2022-11-12 66/week @ 2022-11-19 146/week @ 2022-11-26 33/week @ 2022-12-03 40/week @ 2022-12-10 27/week @ 2022-12-17 50/week @ 2022-12-24 33/week @ 2022-12-31 18/week @ 2023-01-07 7/week @ 2023-01-14 18/week @ 2023-01-21 148/week @ 2023-01-28

193 downloads per month
Used in flowistry_ide

MIT license

185KB
5K SLoC

Information flow analysis

This crate contains the core analysis used by the Flowistry IDE plugin. It is a Rust compiler plugin that computes the information flow within a function. The main analysis is at flowistry::infoflow::compute_flow.

Documentation: https://willcrichton.net/flowistry/flowistry/

For details about this analysis, please read our paper "Modular Information Flow Through Ownership". If you use Flowistry in your research, please cite our paper:

@inproceedings{crichton2022,
  author = {Crichton, Will and Patrignani, Marco and Agrawala, Maneesh and Hanrahan, Pat},
  title = {Modular Information Flow through Ownership}, year = {2022},
  isbn = {9781450392655}, publisher = {Association for Computing Machinery},
  address = {New York, NY, USA}, url = {https://doi.org/10.1145/3519939.3523445},
  booktitle = {Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation},
  pages = {1–14}, numpages = {14}, keywords = {information flow, rust, ownership types},
  location = {San Diego, CA, USA}, series = {PLDI 2022}, doi = {10.1145/3519939.3523445},
}

Dependencies

~1–1.8MB
~37K SLoC