public override void CopyInternalData(VMValue other) { base.CopyInternalData (other); VMValue_arrayinst oth = (VMValue_arrayinst)other; if(data == null) data = new int[oth.data.Length]; for(int i = 0; i < data.Length; i++) data[i] = oth.data[i]; }
public override void CopyInternalData(VMValue other) { base.CopyInternalData (other); VMValue_objectinst theOther = (VMValue_objectinst)other; classType = theOther.classType; holdingLockThreadID = theOther.holdingLockThreadID; holdingLockCount = theOther.holdingLockCount; for(int i = 0; i < ((VMValue_objectinst)other).fields.Count; i++) fields.Add(theOther.fields[i]); }
public override void CopyFrom(VMValue other) { this.value = ((VMValue_int64)other).value; }
public override void CopyInternalData(VMValue other) { base.CopyInternalData (other); arrayInstGuid = ((VMValue_array)other).arrayInstGuid; }
public override void CopyFrom(VMValue other) { arrayInstGuid = ((VMValue_array)other).arrayInstGuid; }
public virtual void CopyInternalData(VMValue other) { this.guid = other.guid; this.isConcrete = other.isConcrete; this.isThreadLocal = other.isThreadLocal; }
public abstract void CopyFrom(VMValue other);
public override void CopyFrom(VMValue other) { this.method = ((VMValue_ftn)other).method; }
public override void CopyFrom(VMValue other) { throw new Exception("Direct copy of arrayinst is not allowed"); }
public override void CopyFrom(VMValue other) { this.valueguid = ((VMValue_object)other).valueguid; }
public void AddArgumentFront(VMValue value) { arguments.Insert(0, value.GUID); }
public override void CopyInternalData(VMValue other) { base.CopyInternalData(other); objGuid = ((VMValue_threadstart)other).objGuid; ftnGuid = ((VMValue_threadstart)other).ftnGuid; }
public override void CopyFrom(VMValue other) { objGuid = ((VMValue_threadstart)other).objGuid; ftnGuid = ((VMValue_threadstart)other).ftnGuid; }
public override void CopyFrom(VMValue other) { // TODO: object data assignment throw new Exception("TODO"); }
public override void CopyInternalData(VMValue other) { base.CopyInternalData(other); method = ((VMValue_ftn)other).method; }
public override void CopyInternalData(VMValue other) { base.CopyInternalData (other); value = ((VMValue_int64)other).value; }
public VMStaticVariable(string name, VMValue value) { this.name = name; this.valueguid = value.GUID; }
public override void CopyInternalData(VMValue other) { base.CopyInternalData(other); classType = ((VMValue_object)other).classType; valueguid = ((VMValue_object)other).valueguid; }
/// <summary> /// Make a new value of the same type of the given value /// The given value is not modified after the operation, only its type is used /// </summary> /// <param name="value">The given value to get the type</param> /// <returns>A new value of the same type of the given value</returns> public VMValue MakeValue(VMValue value) { VMValue ret; if(value is VMValue_int32) { ret = new VMValue_int32(nextguid, 0); allValues.Add(nextguid, ret); nextguid++; return ret; } else if(value is VMValue_int64) { ret = new VMValue_int64(nextguid, 0); allValues.Add(nextguid, ret); nextguid++; return ret; } else if(value is VMValue_double) { ret = new VMValue_double(nextguid, 0); allValues.Add(nextguid, ret); nextguid++; return ret; } else if(value is VMValue_object) { ret = new VMValue_object(nextguid, ((VMValue_object)value).ClassType, -1); allValues.Add(nextguid, ret); nextguid++; return ret; } else if(value is VMValue_array) { ret = new VMValue_array(nextguid, -1); allValues.Add(nextguid, ret); nextguid++; return ret; } else throw new Exception("Unknown value type to make a value"); }
public override void CopyInternalData(VMValue other) { base.CopyInternalData (other); threadStartGUID = ((VMValue_thread)other).threadStartGUID; }