conjure-cp / conjure-oxide

Mozilla Public License 2.0
7 stars 8 forks source link

Split conjure_core::ast into multiple files and clean up code #265

Closed gskorokhod closed 2 months ago

gskorokhod commented 2 months ago

This PR does not implement any new features yet, but includes:

github-actions[bot] commented 2 months ago

Documentation Coverage

This PR ``` +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | ...jure_rules_proc_macro/src/lib.rs | 3 | 100.0% | 1 | 33.3% | +-------------------------------------+------------+------------+------------+------------+ | Total | 3 | 100.0% | 1 | 33.3% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | solvers/kissat/src/lib.rs | 0 | 0.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 0 | 0.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | crates/uniplate_derive/src/lib.rs | 1 | 50.0% | 1 | 50.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 1 | 50.0% | 1 | 50.0% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | ...m_compatability_macro/src/lib.rs | 2 | 100.0% | 1 | 50.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 2 | 100.0% | 1 | 50.0% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | crates/conjure_rules/src/lib.rs | 5 | 100.0% | 4 | 80.0% | | ...es/conjure_rules/src/rule_set.rs | 6 | 75.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 11 | 84.6% | 4 | 44.4% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | crates/uniplate/src/lib.rs | 1 | 100.0% | 1 | 100.0% | | crates/uniplate/src/uniplate.rs | 9 | 69.2% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 10 | 71.4% | 1 | 7.7% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | ...onjure_core/src/ast/constants.rs | 0 | 0.0% | 0 | 0.0% | | .../conjure_core/src/ast/domains.rs | 0 | 0.0% | 0 | 0.0% | | ...jure_core/src/ast/expressions.rs | 19 | 95.0% | 0 | 0.0% | | crates/conjure_core/src/ast/mod.rs | 0 | 0.0% | 0 | 0.0% | | ...ure_core/src/ast/symbol_table.rs | 0 | 0.0% | 0 | 0.0% | | ...onjure_core/src/ast/variables.rs | 0 | 0.0% | 0 | 0.0% | | crates/conjure_core/src/lib.rs | 0 | 0.0% | 0 | 0.0% | | crates/conjure_core/src/metadata.rs | 0 | 0.0% | 0 | 0.0% | | crates/conjure_core/src/model.rs | 1 | 7.7% | 0 | 0.0% | | crates/conjure_core/src/rule.rs | 6 | 30.0% | 0 | 0.0% | | crates/conjure_core/src/solvers.rs | 2 | 40.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 28 | 35.4% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | solvers/minion/src/ast.rs | 11 | 11.2% | 0 | 0.0% | | solvers/minion/src/error.rs | 8 | 100.0% | 0 | 0.0% | | solvers/minion/src/lib.rs | 1 | 100.0% | 1 | 100.0% | | solvers/minion/src/run.rs | 2 | 100.0% | 1 | 100.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 22 | 20.2% | 2 | 11.8% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | conjure_oxide/src/error.rs | 1 | 14.3% | 0 | 0.0% | | conjure_oxide/src/find_conjure.rs | 1 | 50.0% | 0 | 0.0% | | ...ure_oxide/src/generate_custom.rs | 2 | 66.7% | 0 | 0.0% | | conjure_oxide/src/lib.rs | 0 | 0.0% | 0 | 0.0% | | conjure_oxide/src/parse.rs | 0 | 0.0% | 0 | 0.0% | | ...ure_oxide/src/rule_engine/mod.rs | 0 | 0.0% | 0 | 0.0% | | ...src/rule_engine/resolve_rules.rs | 4 | 57.1% | 0 | 0.0% | | ...oxide/src/rule_engine/rewrite.rs | 1 | 25.0% | 0 | 0.0% | | conjure_oxide/src/rules/constant.rs | 1 | 100.0% | 0 | 0.0% | | conjure_oxide/src/rules/mod.rs | 0 | 0.0% | 0 | 0.0% | | ...de/src/solver/adaptors/kissat.rs | 1 | 100.0% | 0 | 0.0% | | ...de/src/solver/adaptors/minion.rs | 1 | 100.0% | 0 | 0.0% | | ...oxide/src/solver/adaptors/mod.rs | 1 | 100.0% | 0 | 0.0% | | conjure_oxide/src/solver/mod.rs | 13 | 35.1% | 1 | 4.5% | | ...ide/src/solver/model_modifier.rs | 7 | 70.0% | 0 | 0.0% | | conjure_oxide/src/solver/states.rs | 7 | 58.3% | 0 | 0.0% | | conjure_oxide/src/solver/stats.rs | 1 | 33.3% | 0 | 0.0% | | conjure_oxide/src/utils/conjure.rs | 0 | 0.0% | 0 | 0.0% | | conjure_oxide/src/utils/json.rs | 2 | 66.7% | 0 | 0.0% | | conjure_oxide/src/utils/misc.rs | 0 | 0.0% | 0 | 0.0% | | conjure_oxide/src/utils/mod.rs | 0 | 0.0% | 0 | 0.0% | | conjure_oxide/src/utils/testing.rs | 0 | 0.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 43 | 37.4% | 1 | 1.3% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | ...d7c5cf6e/out/chuffed_bindings.rs | 0 | 0.0% | 0 | 0.0% | | solvers/chuffed/src/lib.rs | 0 | 0.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 0 | 0.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ ```
Main ``` +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | crates/uniplate_derive/src/lib.rs | 1 | 50.0% | 1 | 50.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 1 | 50.0% | 1 | 50.0% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | ...jure_rules_proc_macro/src/lib.rs | 3 | 100.0% | 1 | 33.3% | +-------------------------------------+------------+------------+------------+------------+ | Total | 3 | 100.0% | 1 | 33.3% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | ...m_compatability_macro/src/lib.rs | 2 | 100.0% | 1 | 50.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 2 | 100.0% | 1 | 50.0% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | crates/conjure_rules/src/lib.rs | 5 | 100.0% | 4 | 80.0% | | ...es/conjure_rules/src/rule_set.rs | 6 | 75.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 11 | 84.6% | 4 | 44.4% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | crates/conjure_core/src/ast.rs | 42 | 58.3% | 0 | 0.0% | | crates/conjure_core/src/lib.rs | 0 | 0.0% | 0 | 0.0% | | crates/conjure_core/src/metadata.rs | 0 | 0.0% | 0 | 0.0% | | crates/conjure_core/src/rule.rs | 6 | 30.0% | 0 | 0.0% | | crates/conjure_core/src/solvers.rs | 2 | 40.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 50 | 49.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | crates/uniplate/src/lib.rs | 1 | 100.0% | 1 | 100.0% | | crates/uniplate/src/uniplate.rs | 9 | 69.2% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 10 | 71.4% | 1 | 7.7% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | solvers/kissat/src/lib.rs | 0 | 0.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 0 | 0.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | solvers/minion/src/ast.rs | 11 | 11.2% | 0 | 0.0% | | solvers/minion/src/error.rs | 8 | 100.0% | 0 | 0.0% | | solvers/minion/src/lib.rs | 1 | 100.0% | 1 | 100.0% | | solvers/minion/src/run.rs | 2 | 100.0% | 1 | 100.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 22 | 20.2% | 2 | 11.8% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | conjure_oxide/src/error.rs | 1 | 14.3% | 0 | 0.0% | | conjure_oxide/src/find_conjure.rs | 1 | 50.0% | 0 | 0.0% | | ...ure_oxide/src/generate_custom.rs | 2 | 66.7% | 0 | 0.0% | | conjure_oxide/src/lib.rs | 0 | 0.0% | 0 | 0.0% | | conjure_oxide/src/parse.rs | 0 | 0.0% | 0 | 0.0% | | ...ure_oxide/src/rule_engine/mod.rs | 0 | 0.0% | 0 | 0.0% | | ...src/rule_engine/resolve_rules.rs | 4 | 57.1% | 0 | 0.0% | | ...oxide/src/rule_engine/rewrite.rs | 1 | 25.0% | 0 | 0.0% | | conjure_oxide/src/rules/constant.rs | 1 | 100.0% | 0 | 0.0% | | conjure_oxide/src/rules/mod.rs | 0 | 0.0% | 0 | 0.0% | | ...de/src/solver/adaptors/kissat.rs | 1 | 100.0% | 0 | 0.0% | | ...de/src/solver/adaptors/minion.rs | 1 | 100.0% | 0 | 0.0% | | ...oxide/src/solver/adaptors/mod.rs | 1 | 100.0% | 0 | 0.0% | | conjure_oxide/src/solver/mod.rs | 13 | 35.1% | 1 | 4.5% | | ...ide/src/solver/model_modifier.rs | 7 | 70.0% | 0 | 0.0% | | conjure_oxide/src/solver/states.rs | 7 | 58.3% | 0 | 0.0% | | conjure_oxide/src/solver/stats.rs | 1 | 33.3% | 0 | 0.0% | | conjure_oxide/src/utils/conjure.rs | 0 | 0.0% | 0 | 0.0% | | conjure_oxide/src/utils/json.rs | 2 | 66.7% | 0 | 0.0% | | conjure_oxide/src/utils/misc.rs | 0 | 0.0% | 0 | 0.0% | | conjure_oxide/src/utils/mod.rs | 0 | 0.0% | 0 | 0.0% | | conjure_oxide/src/utils/testing.rs | 0 | 0.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 43 | 37.4% | 1 | 1.3% | +-------------------------------------+------------+------------+------------+------------+ +-------------------------------------+------------+------------+------------+------------+ | File | Documented | Percentage | Examples | Percentage | +-------------------------------------+------------+------------+------------+------------+ | ...d7c5cf6e/out/chuffed_bindings.rs | 0 | 0.0% | 0 | 0.0% | | solvers/chuffed/src/lib.rs | 0 | 0.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ | Total | 0 | 0.0% | 0 | 0.0% | +-------------------------------------+------------+------------+------------+------------+ ```

Code Coverage

This PR

  lines......: 80.8% (4361 of 5394 lines)
  functions..: 55.9% (443 of 792 functions)
  branches...: no data found

Main

  lines......: 80.8% (4354 of 5388 lines)
  functions..: 55.9% (443 of 792 functions)
  branches...: no data found