public PrgState <T> Execute <T>(PrgState <T> state) { MyIHeap heap = state.GetHeap(); MyIDictionary symTable = state.GetSymTable(); if (symTable.IsDefined(mVarName)) { heap.Update(symTable.Lookup(mVarName), mExp.Eval(symTable, heap));; } else { throw new ArgumentException("Heap address undefined"); } return(null); }
public PrgState <T> Execute <T>(PrgState <T> state) { MyIDictionary symTbl = state.GetSymTable(); int val; val = mExp.Eval(symTbl, state.GetHeap()); if (symTbl.IsDefined(mId)) { symTbl.Update(mId, val); } else { symTbl.Add(mId, val); } return(null); }
public PrgState <T> Execute <T>(PrgState <T> state) { MyIHeap heap = state.GetHeap(); MyIDictionary symTable = state.GetSymTable(); if (symTable.IsDefined(mVarName)) { symTable.Update(mVarName, heap.Size() + 1); heap.Put(heap.Size() + 1, mExp.Eval(symTable, heap)); } else { symTable.Add(mVarName, heap.Size() + 1); heap.Put(heap.Size() + 1, mExp.Eval(symTable, heap)); } return(null); }