Exemple #1
0
        public void Merge(ICell source, Model model)
        {
            if (source != this)
            {
                var c = (ICell <T>)source;
                var f = _func;
                _func      = c.Function;
                Parent     = c.Parent;
                c.Function = f;
            }
            if (source != this)
            {
                source.Dispose();
            }

            // handle update of current while this cell is being constructed
            if (Parent is Model m)
            {
                var cur = m[this.Mnemonic];
                if (cur != this && cur.GetType() == this.GetType())
                {
                    cur.Merge(this, model);
                }
            }
        }