This repository contains the in-progress Conjure Oxide constraints modelling tool and its dependencies.
https://conjure-cp.github.io/conjure-oxide/
The following dependencies are required:
Ensure that Conjure is placed early in your PATH to avoid conflicts with ImageMagick's conjure command!
Run cargo install --path crates/conjure-cp-cli to install conjure-oxide.
This repository holds the source-code for both conjure-oxide itself, and
various related projects.
The following crates define the conjure-oxide system:
-
conjure-cpdefinesconjure-oxideas a library. It re-exports symbols from the following internal crates: -
conjure-cp-cliimplements theconjure-oxidecommand line interface, and exports various CLI related utilities for use by the integration tester. -
conjure-cp-rulesdefines the default rewrite rules used byconjure-oxide. -
tests-integrationis an internal crate containing integration tests forconjure-oxide. -
conjure-cp-lspimplements the language server for use in a VSCode extension (as outlined in Language Server Protocol) forconjure-oxide.
The following crates are related to, or used by, conjure-oxide, but can be
used in isolation from it:
minion-sysdefines FFI bindings for the Minion CP solver.tree-morphprovides a framework for implementing term-rewriting systems.tree-sitter-essencedefines a tree-sitter grammar for Essence.randicheck
The following projects are used by, and developed alongside, conjure-oxide,
but are kept in their own repositories:
This project is being produced by staff and students of University of St Andrews, and is licenced under the Mozilla Public Licence 2.0.