public static void VisitDescendantsSafe(this IJsCsGlue @this, Func <IJsCsGlue, bool> visit)
        {
            var res = new HashSet <IJsCsGlue>();
            Func <IJsCsGlue, bool> newVisitor = (glue) => (res.Add(glue)) && visit(glue);

            @this.VisitDescendants(newVisitor);
        }