[][src]Module cargo_workspace2::query

Parse the query language for the CLI and other tools

The cargo-ws2 query language (ws2ql) allows users to specify a set of inputs, and an operation to execute on it.

Basic rules

  • Inside [] are sets (meaning items de-dup) that don't require reparations
  • IF [] contains a / anywhere but the beginning AND end, query becomes a path glob
  • IF [] contains / at start and end, query becomes a regex
  • An operation is parsed in the order of the fields in it's struct (so publish order is type mod devel, etc)
  • Inside {} you can create dependency maps with arrows.
  • { foo < } represents all crates that depend on foo
  • { foo < bar < } represents all crates that depend on foo AND bar
  • { foo < bar |< } represents all crates that depend on foo but NOT on bar

... etc.

Structs

DepConstraint

Express a dependency constraint

Enums

Constraint

All constraints can be negated

Query

A query on the dependency graph