Esempio n. 1
0
        public CowValue GetCowValue(EmitContext context)
        {
            if (_cowTracker != null)
            {
                if (_cowTracker.IsDirty || _cowTracker.ReferenceCount == 0)
                {
                    _cowTracker = null;
                }
                else
                {
                    return(new CowValue(_cowTracker));
                }
            }

            _cowTracker = new CowValueInternalTracker(context, this);
            return(new CowValue(_cowTracker));
        }
Esempio n. 2
0
 internal CowValue(CowValueInternalTracker tracker)
 {
     _tracker = tracker;
     _tracker.AddRef(this);
 }