12 | %language ElabReflection
23 | ||| Expand shortened string diagram notation into a full expression.
24 | |||
25 | ||| This takes two additional parameters: `obj`, which is a wildcard
26 | ||| expression used when passing objects as parameters, and `impl`,
27 | ||| which is the `Cartesian` implementation the expansion will use.
28 | export
38 | where
60 | stringImpl'
67 | mon
87 | ||| Enter string diagram notation (for `Cartesian`).
88 | |||
89 | ||| This elaboration script must be specifically invoked with
90 | ||| `%runElab`. The category is inferred from the return type, but
91 | ||| the tensor product must be passed as an explicit argument.
92 | export