public HexBufferFileServiceImpl(HexBuffer buffer, Lazy <StructureProviderFactory, VSUTIL.IOrderable>[] structureProviderFactories, Lazy <BufferFileHeadersProviderFactory>[] bufferFileHeadersProviderFactories) { this.buffer = buffer ?? throw new ArgumentNullException(nameof(buffer)); this.structureProviderFactories = structureProviderFactories ?? throw new ArgumentNullException(nameof(structureProviderFactories)); this.bufferFileHeadersProviderFactories = bufferFileHeadersProviderFactories ?? throw new ArgumentNullException(nameof(bufferFileHeadersProviderFactories)); files = new SpanDataCollection <HexBufferFileImpl>(); }
public HexBufferFileImpl(HexBufferFile parentFile, Lazy <StructureProviderFactory, VSUTIL.IOrderable>[] structureProviderFactories, Lazy <BufferFileHeadersProviderFactory>[] bufferFileHeadersProviderFactories, HexBuffer buffer, HexSpan span, string name, string filename, string[] tags) : base(buffer, span, name, filename, tags) { if (parentFile?.Span.Contains(span) == false) { throw new ArgumentOutOfRangeException(nameof(span)); } ParentFile = parentFile; this.structureProviderFactories = structureProviderFactories ?? throw new ArgumentNullException(nameof(structureProviderFactories)); this.bufferFileHeadersProviderFactories = bufferFileHeadersProviderFactories ?? throw new ArgumentNullException(nameof(bufferFileHeadersProviderFactories)); files = new SpanDataCollection <HexBufferFileImpl>(); }