# ws2 query language 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), space separated * 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 * `{ 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` OR `bar` * `{ foo < bar &!< }` represents all crates that depend on `foo` AND NOT `bar`