示例#1
0
        public override object Get(IStmMemory memoryRef, int[] memoryVersion = null)
        {
            IInnerTransactionStmMemory innerMemoryRef = (IInnerTransactionStmMemory)memoryRef;
            MemoryTuple memoryTuple = GenerateMemoryTuple(innerMemoryRef, memoryVersion);

            if (!memoryChanges.ContainsKey(innerMemoryRef))
            {
                FixMemoryChange(innerMemoryRef, memoryTuple);
            }
            return(memoryTuple.value);
        }
示例#2
0
        public override void Set(IStmMemory memoryRef, object value, int[] memoryVersion = null)
        {
            IInnerTransactionStmMemory innerMemoryRef = (IInnerTransactionStmMemory)memoryRef;
            MemoryTuple memoryTuple = GenerateMemoryTuple(innerMemoryRef, memoryVersion, value);

            FixMemoryChange(innerMemoryRef, memoryTuple);
            if (!memoryRefsToUpdate.Contains(innerMemoryRef))
            {
                memoryRefsToUpdate.Add(innerMemoryRef);
            }
        }
 public abstract void Set(IStmMemory memoryRef, object value, int[] memoryVersion = null);
 public abstract object Get(IStmMemory memoryRef, int[] memoryVersion = null);