public WarningSuggestionLinkOutput(IOutputFullResults <Method, Assembly> inner)
            : base(inner)
        {
            Contract.Requires(inner != null);

            this.suppressWarningManager = new SuppressWarningsManager <Method>();
            this.DB = null;
        }
        public MaskingOutput(IOutputFullResults <Method, Assembly> output, GeneralOptions options,
                             IDecodeMetaData <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly> mdDecoder)
            : base(output)
        {
            Contract.Requires(output != null);
            Contract.Requires(options != null);
            Contract.Requires(mdDecoder != null);

            this.options                 = options;
            this.mdDecoder               = mdDecoder;
            this.currMethod              = default(Method);
            this.methodmask              = null;
            this.assemblymask            = null;
            this.swallowedCount          = new SwallowedBuckets();
            this.suppressWarningsManager = new SuppressWarningsManager <Method>();
            this.errorsWereEmitted       = false;
        }