Module canrun::goals::project[][src]

Expand description

Goals that deal with resolved values.

Not all relationships can be expressed with the simpler low level operations, especially when involve values of different types.

The project family of goals use State.constrain() to allow dealing with resolved values. These goals are relatively low level and may be a bit subtle to use correctly. They are provided as a foundation for building higher level goals.

Functions

Create a projection goal that succeeds if the resolved value passes an assertion test.

Create a projection goal that succeeds if the resolved values pass an assertion test.

Create a projection goal that allows deriving one resolved value from the other.

Create a projection goal that allows deriving one resolved value from the other two.

Create a projection goal that allows creating a new goal based on the resolved value.

Create a projection goal that allows creating a new goal based on the resolved values.