public void NonPublicStructCopyTest() { PrivateStruct instance = default; CopyStruct copy = instance.DuckCast <CopyStruct>(); Assert.Equal(instance.Value, copy.Value); }
private void btnInsertChunk_Click(object sender, EventArgs e) { // Get copy data CopyStruct copydata = Global.EventHandler.GetCopyData(); //if (copydata.BlockName == tagblock.GetName()) //{ // // Overwrite? // if (copydata.TagBlockData.GetType() == typeof(HaloPlugins.TagBlock)) // Reload((HaloPlugins.TagBlock)copydata.TagBlockData); // else // { // if (MessageBox.Show("Would you like to overwrite this block?", "Overwrite Block", MessageBoxButtons.YesNo) == DialogResult.Yes) // { // this.tagblock[comboBox1.SelectedIndex] = (MetaNode[])copydata.TagBlockData; // UpdateValues(); // } // else // { // // Add block // this.tagblock.AddBlock(); // this.tagblock[tagblock.BlockCount - 1] = (MetaNode[])copydata.TagBlockData; // // Update // comboBox1.Items.Add((tagblock.BlockCount - 1).ToString()); // comboBox1.SelectedIndex = tagblock.BlockCount - 1; // } // } //} //else // MessageBox.Show("Source block does not match destination!"); }
public void NonPublicStructCopyTest() { PrivateStruct instance = default; CopyStruct copy = instance.DuckCast <CopyStruct>(); Assert.Equal((int)instance.Value, (int)copy.Value); Assert.Equal(ValuesDuckType.Third.ToString(), copy.GetValue()); Assert.Equal(ValuesDuckType.Third.ToString(), ((IGetValue)copy).GetValueProp); }
public void CopyData() { CopyClass copyClassA = new CopyClass(10, 20); CopyClass copyClassB = copyClassA; // 참조복사가 일어난다. copyClassB.x = 100; copyClassB.y = 200; Console.WriteLine("CopyClass A = X : " + copyClassA.x + ", Y: " + copyClassA.y); Console.WriteLine("CopyClass A = X : " + copyClassB.x + ", Y: " + copyClassB.y); CopyStruct copyStructA = new CopyStruct(10, 20); CopyStruct copyStructB = copyStructA; //값 복사가 일어난다. copyStructB.x = 100; copyStructB.y = 200; Console.WriteLine("copyStruct A = X : " + copyStructA.x + ", Y: " + copyStructA.y); Console.WriteLine("copyStruct B = X : " + copyStructB.x + ", Y: " + copyStructB.y); }
void EventHandler_SetCopyData_Event(CopyStruct CopyData) { copydata = CopyData; }