public override DbgModuleBreakpoint[] Add(DbgModuleBreakpointSettings[] settings) { if (settings == null) { throw new ArgumentNullException(nameof(settings)); } // Return a copy since the caller could modify the array var bps = new DbgModuleBreakpoint[settings.Length]; var bpImpls = new DbgModuleBreakpointImpl[settings.Length]; for (int i = 0; i < bps.Length; i++) { var bp = new DbgModuleBreakpointImpl(this, Interlocked.Increment(ref moduleId), settings[i]); bps[i] = bp; bpImpls[i] = bp; } Dbg(() => AddCore(bpImpls)); return(bps); }
/// <summary> /// Constructor /// </summary> /// <param name="breakpoint">Breakpoint</param> /// <param name="settings">New settings</param> public DbgModuleBreakpointAndSettings(DbgModuleBreakpoint breakpoint, DbgModuleBreakpointSettings settings) { Breakpoint = breakpoint ?? throw new ArgumentNullException(nameof(breakpoint)); Settings = settings; }
internal void WriteOrder(ITextColorWriter output, DbgModuleBreakpoint bp) => WriteInt32Decimal(output, bp.Order);
internal void WriteAppDomainName(ITextColorWriter output, DbgModuleBreakpoint bp) => output.Write(BoxedTextColor.String, bp.AppDomainName ?? string.Empty);
internal void WriteInMemory(ITextColorWriter output, DbgModuleBreakpoint bp) => WriteBoolean(output, bp.IsInMemory);
internal void WriteDynamic(ITextColorWriter output, DbgModuleBreakpoint bp) => WriteBoolean(output, bp.IsDynamic);
internal void WriteIsEnabled(ITextColorWriter output, DbgModuleBreakpoint bp) => WriteBoolean(output, bp.IsEnabled);
internal void WriteProcessName(IDbgTextWriter output, DbgModuleBreakpoint bp) => output.Write(DbgTextColor.String, bp.ProcessName ?? string.Empty);
internal void WriteLoadModule(IDbgTextWriter output, DbgModuleBreakpoint bp) => WriteBoolean(output, bp.IsLoaded);