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

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

assert_1

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

assert_2

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

map_1

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

map_2

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

project_1

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

project_2

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