ruler-0.4.0.0: src/Expr/NmSAG.cag
-------------------------------------------------------------------------
-- Expr name occurrences
-------------------------------------------------------------------------
%%[1 ag
ATTR AllExpr AGExprItf [ | | nmS USE {`Set.union`} {Set.empty}: {Set.Set Nm} ]
SEM Expr
| Var lhs . nmS = Set.singleton @nm
| Op lhs . nmS = (@nm `Set.delete` @nmExpr.nmS) `Set.union` @lExpr.nmS `Set.union` @rExpr.nmS
SEM ANm
| Loc lhs . nmS = Set.singleton @nm
%%]