public static void MoveMemory(MemoryBlock memory, AsquellObj to, AsquellObj from) { if (from.Type == AsquellObjectType.RunTimeValue) { if (memory.VariableInMemory(from)) { AsquellObj rawValue = memory.GetRealVariable(from); memory.ModifyVariable(to, rawValue); memory.DeleteVariable(from); return; } else { throw new KeyNotFoundException("Can not find '"+from.Value.ToString()+"' in memory!"); } } throw new ArgumentException("Invalid type for moving memory! First argument must be a variable!"); }