Mono.Debugger.Languages.Mono.MonoVariableLocation.WriteAddress C# (CSharp) Method

WriteAddress() private method

private WriteAddress ( TargetMemoryAccess target, TargetAddress new_address ) : void
target TargetMemoryAccess
new_address TargetAddress
return void
        internal override void WriteAddress(TargetMemoryAccess target,
						     TargetAddress new_address)
        {
            if (!is_valid)
                throw new LocationInvalidException ();

            if (is_regoffset) {
                TargetAddress the_addr;
                if (is_byref)
                    the_addr = new TargetAddress (
                        target.AddressDomain, register.Value + regoffset);
                else
                    the_addr = address;

                target.WriteAddress (the_addr, new_address);
                update (target);
            } else {
                register.WriteRegister (target, new_address.Address);
                update (target);
            }
        }