6 releases
Uses old Rust 2015
0.1.41 | May 8, 2017 |
---|---|
0.1.4 | May 8, 2017 |
#308 in Visualization
45 downloads per month
Used in 4 crates
(via oysterpack_app_metadata)
48KB
876 lines
ML -Modeling Language-
A library to generating UML language from Rust's project into graphiz/dot file.
Usage
This repo is provided as a Cargo package and a build script.
- adjust your
Cargo.toml
to include.
build = "build.rs"
[build-dependencies.mml]
version = "0.1"
- And your
build.rs
to generate your uml graph/viz and Structured Vector Graphics attarget/dot/$CARGO_PKG_NAME.{dot,svg}
.
extern crate mml;
fn main() {
let _ = mml::src2both("src", concat!("target/doc/", env!("CARGO_PKG_NAME")));
}
- (Facultative) From your entry point library file, you can add the generated vectorized graph.
//! ![uml](ml.svg)
- (Facultative) With the travis-cargo's instructions, you can prepare your graphviz's dependency like with this example.
addons:
apt:
packages:
- graphviz
before_script:
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update ; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install graphviz ; fi
...
script:
- |
travis-cargo build &&
...
Features
Consider this list of fonctionalities like unstandard-uml.
- implem -- add a column to show the functions from a implementation.
- fn-emilgardis -- the function fields are preceded by fn keyword (Asked by Emilgardis).
Knowledge
This is a reading list of material relevant to Ml. It includes prior research that has - at one time or another - influenced the design of Ml, as well as publications about Ml.
License
ml
is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0), with portions covered by various BSD-like licenses.
See LICENSE-APACHE, and LICENSE-MIT for details.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~3MB
~61K SLoC