Example #1
0
        private void VisitUpdate(IJsCsGlue glue)
        {
            if (glue.JsValue != null)
            {
                return;
            }

            var updater = new JavascriptObjectSynchroneousBuilderAdapter(_Factory, _Cache, glue, _Mapping);

            updater.ApplyLocalChanges();
            glue.VisitChildren(VisitUpdate);
            updater.AfterChildrenUpdates();
        }
        private static void CollectAllRemoved(IJsCsGlue old, ISet <IJsCsGlue> toRemove)
        {
            if (!toRemove.Add(old))
            {
                return;
            }

            old.VisitChildren(child =>
            {
                if (child.Release())
                {
                    CollectAllRemoved(child, toRemove);
                }
            });
        }