From c6e8bdfa9bca7ef6ad1c8b2bc3a2c419b365848d Mon Sep 17 00:00:00 2001 From: Drew Noakes Date: Sat, 27 Jan 2024 21:00:24 +1100 Subject: [PATCH 1/4] Add word to spelling.dic --- spelling.dic | 1 + 1 file changed, 1 insertion(+) diff --git a/spelling.dic b/spelling.dic index 7735fbd02..ffc7184f1 100644 --- a/spelling.dic +++ b/spelling.dic @@ -9,6 +9,7 @@ epsf exif Exiftool fffzzz +flir Foveon ftyp graymap From 3968f521ca6cff1852653f878f10376593710276 Mon Sep 17 00:00:00 2001 From: Drew Noakes Date: Sat, 27 Jan 2024 21:01:17 +1100 Subject: [PATCH 2/4] Use collection expressions --- MetadataExtractor.Tests/TagDescriptorTests.cs | 2 +- MetadataExtractor/Formats/Flir/FlirReader.cs | 2 +- MetadataExtractor/Formats/Icc/IccReader.cs | 2 +- MetadataExtractor/Formats/Photoshop/PhotoshopReader.cs | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/MetadataExtractor.Tests/TagDescriptorTests.cs b/MetadataExtractor.Tests/TagDescriptorTests.cs index f8498b0c6..591ea1d79 100644 --- a/MetadataExtractor.Tests/TagDescriptorTests.cs +++ b/MetadataExtractor.Tests/TagDescriptorTests.cs @@ -27,7 +27,7 @@ public void GetDescription_SimplifiedLongCollections() public void ConvertBytesToVersionString() { Assert.Null(TagDescriptor.ConvertBytesToVersionString(null, 1)); - Assert.Null(TagDescriptor.ConvertBytesToVersionString(Array.Empty(), 1)); + Assert.Null(TagDescriptor.ConvertBytesToVersionString([], 1)); Assert.Equal("1.00", TagDescriptor.ConvertBytesToVersionString([0, 1, 0, 0], 2)); Assert.Equal(".100", TagDescriptor.ConvertBytesToVersionString([0, 1, 0, 0], 1)); diff --git a/MetadataExtractor/Formats/Flir/FlirReader.cs b/MetadataExtractor/Formats/Flir/FlirReader.cs index d458145c6..b0b6c2139 100644 --- a/MetadataExtractor/Formats/Flir/FlirReader.cs +++ b/MetadataExtractor/Formats/Flir/FlirReader.cs @@ -33,7 +33,7 @@ public IEnumerable ReadJpegSegments(IEnumerable segments } if (length == 0) - return Enumerable.Empty(); + return []; var buffer = new byte[length]; using var merged = new MemoryStream(buffer); diff --git a/MetadataExtractor/Formats/Icc/IccReader.cs b/MetadataExtractor/Formats/Icc/IccReader.cs index bc38419a4..cfc583c3f 100644 --- a/MetadataExtractor/Formats/Icc/IccReader.cs +++ b/MetadataExtractor/Formats/Icc/IccReader.cs @@ -32,7 +32,7 @@ public IEnumerable ReadJpegSegments(IEnumerable segments var iccSegments = segments.Where(segment => segment.Span.StartsWith(JpegSegmentPreamble)).ToList(); if (iccSegments.Count == 0) - return Enumerable.Empty(); + return []; byte[] buffer; if (iccSegments.Count == 1) diff --git a/MetadataExtractor/Formats/Photoshop/PhotoshopReader.cs b/MetadataExtractor/Formats/Photoshop/PhotoshopReader.cs index 6e2d93fb0..77d5ed39a 100644 --- a/MetadataExtractor/Formats/Photoshop/PhotoshopReader.cs +++ b/MetadataExtractor/Formats/Photoshop/PhotoshopReader.cs @@ -33,7 +33,7 @@ protected override IEnumerable Extract(byte[] segmentBytes, int pream length: segmentBytes.Length - preambleLength - 1); } - return Enumerable.Empty(); + return []; } public IReadOnlyList Extract(SequentialReader reader, int length) From f932d605001dfd5097fdb3dda125466e2e2e6464 Mon Sep 17 00:00:00 2001 From: Drew Noakes Date: Sat, 27 Jan 2024 21:23:30 +1100 Subject: [PATCH 3/4] Use IROC in IJpegSegmentMetadataReader --- MetadataExtractor/Formats/Adobe/AdobeJpegReader.cs | 2 +- MetadataExtractor/Formats/Exif/ExifReader.cs | 2 +- MetadataExtractor/Formats/Flir/FlirReader.cs | 2 +- MetadataExtractor/Formats/Icc/IccReader.cs | 2 +- MetadataExtractor/Formats/Iptc/IptcReader.cs | 2 +- MetadataExtractor/Formats/Jfif/JfifReader.cs | 2 +- MetadataExtractor/Formats/Jfxx/JfxxReader.cs | 2 +- .../Formats/Jpeg/IJpegSegmentMetadataReader.cs | 2 +- .../Formats/Jpeg/JpegCommentReader.cs | 2 +- MetadataExtractor/Formats/Jpeg/JpegDhtReader.cs | 2 +- MetadataExtractor/Formats/Jpeg/JpegDnlReader.cs | 2 +- MetadataExtractor/Formats/Jpeg/JpegReader.cs | 6 +++--- .../Jpeg/JpegSegmentWithPreambleMetadataReader.cs | 2 +- MetadataExtractor/Formats/Photoshop/DuckyReader.cs | 2 +- .../Formats/Photoshop/PhotoshopReader.cs | 2 +- MetadataExtractor/Formats/Xmp/XmpReader.cs | 2 +- .../PublicAPI/net45/PublicAPI.Shipped.txt | 14 +++++++------- .../PublicAPI/netstandard1.3/PublicAPI.Shipped.txt | 14 +++++++------- .../PublicAPI/netstandard2.1/PublicAPI.Shipped.txt | 14 +++++++------- 19 files changed, 39 insertions(+), 39 deletions(-) diff --git a/MetadataExtractor/Formats/Adobe/AdobeJpegReader.cs b/MetadataExtractor/Formats/Adobe/AdobeJpegReader.cs index 7adbe6357..2fd33bdde 100644 --- a/MetadataExtractor/Formats/Adobe/AdobeJpegReader.cs +++ b/MetadataExtractor/Formats/Adobe/AdobeJpegReader.cs @@ -11,7 +11,7 @@ public sealed class AdobeJpegReader : IJpegSegmentMetadataReader { public const string JpegSegmentPreamble = "Adobe"; - ICollection IJpegSegmentMetadataReader.SegmentTypes { get; } = [JpegSegmentType.AppE]; + IReadOnlyCollection IJpegSegmentMetadataReader.SegmentTypes { get; } = [JpegSegmentType.AppE]; public IEnumerable ReadJpegSegments(IEnumerable segments) { diff --git a/MetadataExtractor/Formats/Exif/ExifReader.cs b/MetadataExtractor/Formats/Exif/ExifReader.cs index 47dfc86e2..2eec871c2 100644 --- a/MetadataExtractor/Formats/Exif/ExifReader.cs +++ b/MetadataExtractor/Formats/Exif/ExifReader.cs @@ -22,7 +22,7 @@ public sealed class ExifReader : JpegSegmentWithPreambleMetadataReader /// Exif data stored in JPEG files' APP1 segment are preceded by this six character preamble "Exif\0\0". protected override ReadOnlySpan PreambleBytes => JpegSegmentPreamble; - public override ICollection SegmentTypes { get; } = [JpegSegmentType.App1]; + public override IReadOnlyCollection SegmentTypes { get; } = [JpegSegmentType.App1]; protected override IEnumerable Extract(byte[] segmentBytes, int preambleLength) { diff --git a/MetadataExtractor/Formats/Flir/FlirReader.cs b/MetadataExtractor/Formats/Flir/FlirReader.cs index b0b6c2139..529590953 100644 --- a/MetadataExtractor/Formats/Flir/FlirReader.cs +++ b/MetadataExtractor/Formats/Flir/FlirReader.cs @@ -14,7 +14,7 @@ public class FlirReader : IJpegSegmentMetadataReader private ReadOnlySpan PreambleBytes => "FLIR\0"u8; - public ICollection SegmentTypes { get; } = [JpegSegmentType.App1]; + public IReadOnlyCollection SegmentTypes { get; } = [JpegSegmentType.App1]; public IEnumerable ReadJpegSegments(IEnumerable segments) { diff --git a/MetadataExtractor/Formats/Icc/IccReader.cs b/MetadataExtractor/Formats/Icc/IccReader.cs index cfc583c3f..58c3a0fd3 100644 --- a/MetadataExtractor/Formats/Icc/IccReader.cs +++ b/MetadataExtractor/Formats/Icc/IccReader.cs @@ -22,7 +22,7 @@ public sealed class IccReader : IJpegSegmentMetadataReader // NOTE the header is 14 bytes, while "ICC_PROFILE" is 11 private const int JpegSegmentPreambleLength = 14; - ICollection IJpegSegmentMetadataReader.SegmentTypes { get; } = [JpegSegmentType.App2]; + IReadOnlyCollection IJpegSegmentMetadataReader.SegmentTypes { get; } = [JpegSegmentType.App2]; public IEnumerable ReadJpegSegments(IEnumerable segments) { diff --git a/MetadataExtractor/Formats/Iptc/IptcReader.cs b/MetadataExtractor/Formats/Iptc/IptcReader.cs index af2f8403f..fb2872cdb 100644 --- a/MetadataExtractor/Formats/Iptc/IptcReader.cs +++ b/MetadataExtractor/Formats/Iptc/IptcReader.cs @@ -31,7 +31,7 @@ public sealed class IptcReader : IJpegSegmentMetadataReader internal const byte IptcMarkerByte = 0x1c; - ICollection IJpegSegmentMetadataReader.SegmentTypes { get; } = [JpegSegmentType.AppD]; + IReadOnlyCollection IJpegSegmentMetadataReader.SegmentTypes { get; } = [JpegSegmentType.AppD]; public IEnumerable ReadJpegSegments(IEnumerable segments) { diff --git a/MetadataExtractor/Formats/Jfif/JfifReader.cs b/MetadataExtractor/Formats/Jfif/JfifReader.cs index 2cfa72625..d6b67fac2 100644 --- a/MetadataExtractor/Formats/Jfif/JfifReader.cs +++ b/MetadataExtractor/Formats/Jfif/JfifReader.cs @@ -19,7 +19,7 @@ public sealed class JfifReader : JpegSegmentWithPreambleMetadataReader protected override ReadOnlySpan PreambleBytes => JpegSegmentPreamble; - public override ICollection SegmentTypes { get; } = [JpegSegmentType.App0]; + public override IReadOnlyCollection SegmentTypes { get; } = [JpegSegmentType.App0]; protected override IEnumerable Extract(byte[] segmentBytes, int preambleLength) { diff --git a/MetadataExtractor/Formats/Jfxx/JfxxReader.cs b/MetadataExtractor/Formats/Jfxx/JfxxReader.cs index 8c827f110..1d8cef160 100644 --- a/MetadataExtractor/Formats/Jfxx/JfxxReader.cs +++ b/MetadataExtractor/Formats/Jfxx/JfxxReader.cs @@ -19,7 +19,7 @@ public sealed class JfxxReader : JpegSegmentWithPreambleMetadataReader protected override ReadOnlySpan PreambleBytes => JpegSegmentPreamble; - public override ICollection SegmentTypes { get; } = [JpegSegmentType.App0]; + public override IReadOnlyCollection SegmentTypes { get; } = [JpegSegmentType.App0]; protected override IEnumerable Extract(byte[] segmentBytes, int preambleLength) { diff --git a/MetadataExtractor/Formats/Jpeg/IJpegSegmentMetadataReader.cs b/MetadataExtractor/Formats/Jpeg/IJpegSegmentMetadataReader.cs index c412cdcb5..d3b6facb1 100644 --- a/MetadataExtractor/Formats/Jpeg/IJpegSegmentMetadataReader.cs +++ b/MetadataExtractor/Formats/Jpeg/IJpegSegmentMetadataReader.cs @@ -10,7 +10,7 @@ public interface IJpegSegmentMetadataReader /// /// Gets the set of JPEG segment types that this reader is interested in. /// - ICollection SegmentTypes { get; } + IReadOnlyCollection SegmentTypes { get; } /// /// Extracts metadata from all JPEG segments matching . diff --git a/MetadataExtractor/Formats/Jpeg/JpegCommentReader.cs b/MetadataExtractor/Formats/Jpeg/JpegCommentReader.cs index 361ce8562..a10d71034 100644 --- a/MetadataExtractor/Formats/Jpeg/JpegCommentReader.cs +++ b/MetadataExtractor/Formats/Jpeg/JpegCommentReader.cs @@ -7,7 +7,7 @@ namespace MetadataExtractor.Formats.Jpeg /// Drew Noakes https://drewnoakes.com public sealed class JpegCommentReader : IJpegSegmentMetadataReader { - ICollection IJpegSegmentMetadataReader.SegmentTypes { get; } = new[] { JpegSegmentType.Com }; + IReadOnlyCollection IJpegSegmentMetadataReader.SegmentTypes { get; } = [JpegSegmentType.Com]; /// Reads JPEG comments, returning each in a . public IEnumerable ReadJpegSegments(IEnumerable segments) diff --git a/MetadataExtractor/Formats/Jpeg/JpegDhtReader.cs b/MetadataExtractor/Formats/Jpeg/JpegDhtReader.cs index affc3677b..79e16b779 100644 --- a/MetadataExtractor/Formats/Jpeg/JpegDhtReader.cs +++ b/MetadataExtractor/Formats/Jpeg/JpegDhtReader.cs @@ -8,7 +8,7 @@ namespace MetadataExtractor.Formats.Jpeg /// Kevin Mott https://github.com/kwhopper public sealed class JpegDhtReader : IJpegSegmentMetadataReader { - ICollection IJpegSegmentMetadataReader.SegmentTypes { get; } = new[] { JpegSegmentType.Dht }; + IReadOnlyCollection IJpegSegmentMetadataReader.SegmentTypes { get; } = [JpegSegmentType.Dht]; public IEnumerable ReadJpegSegments(IEnumerable segments) { diff --git a/MetadataExtractor/Formats/Jpeg/JpegDnlReader.cs b/MetadataExtractor/Formats/Jpeg/JpegDnlReader.cs index b23897bfa..677695539 100644 --- a/MetadataExtractor/Formats/Jpeg/JpegDnlReader.cs +++ b/MetadataExtractor/Formats/Jpeg/JpegDnlReader.cs @@ -9,7 +9,7 @@ namespace MetadataExtractor.Formats.Jpeg /// Kevin Mott https://github.com/kwhopper public sealed class JpegDnlReader : IJpegSegmentMetadataReader { - ICollection IJpegSegmentMetadataReader.SegmentTypes { get; } = new[] { JpegSegmentType.Dnl }; + IReadOnlyCollection IJpegSegmentMetadataReader.SegmentTypes { get; } = [JpegSegmentType.Dnl]; public IEnumerable ReadJpegSegments(IEnumerable segments) { diff --git a/MetadataExtractor/Formats/Jpeg/JpegReader.cs b/MetadataExtractor/Formats/Jpeg/JpegReader.cs index 41561d696..c9bd4bfae 100644 --- a/MetadataExtractor/Formats/Jpeg/JpegReader.cs +++ b/MetadataExtractor/Formats/Jpeg/JpegReader.cs @@ -7,14 +7,14 @@ namespace MetadataExtractor.Formats.Jpeg /// Darrell Silver http://www.darrellsilver.com public sealed class JpegReader : IJpegSegmentMetadataReader { - ICollection IJpegSegmentMetadataReader.SegmentTypes { get; } = new HashSet - { + IReadOnlyCollection IJpegSegmentMetadataReader.SegmentTypes { get; } = + [ // NOTE that some SOFn values do not exist JpegSegmentType.Sof0, JpegSegmentType.Sof1, JpegSegmentType.Sof2, JpegSegmentType.Sof3, JpegSegmentType.Sof5, JpegSegmentType.Sof6, JpegSegmentType.Sof7, JpegSegmentType.Sof9, JpegSegmentType.Sof10, JpegSegmentType.Sof11, JpegSegmentType.Sof13, JpegSegmentType.Sof14, JpegSegmentType.Sof15 - }; + ]; public IEnumerable ReadJpegSegments(IEnumerable segments) { diff --git a/MetadataExtractor/Formats/Jpeg/JpegSegmentWithPreambleMetadataReader.cs b/MetadataExtractor/Formats/Jpeg/JpegSegmentWithPreambleMetadataReader.cs index 6d872397a..0ddbb0f53 100644 --- a/MetadataExtractor/Formats/Jpeg/JpegSegmentWithPreambleMetadataReader.cs +++ b/MetadataExtractor/Formats/Jpeg/JpegSegmentWithPreambleMetadataReader.cs @@ -6,7 +6,7 @@ public abstract class JpegSegmentWithPreambleMetadataReader : IJpegSegmentMetada { protected abstract ReadOnlySpan PreambleBytes { get; } - public abstract ICollection SegmentTypes { get; } + public abstract IReadOnlyCollection SegmentTypes { get; } public IEnumerable ReadJpegSegments(IEnumerable segments) { diff --git a/MetadataExtractor/Formats/Photoshop/DuckyReader.cs b/MetadataExtractor/Formats/Photoshop/DuckyReader.cs index f33d45331..48b7a11e4 100644 --- a/MetadataExtractor/Formats/Photoshop/DuckyReader.cs +++ b/MetadataExtractor/Formats/Photoshop/DuckyReader.cs @@ -10,7 +10,7 @@ public sealed class DuckyReader : IJpegSegmentMetadataReader { public static ReadOnlySpan JpegSegmentPreamble => "Ducky"u8; - ICollection IJpegSegmentMetadataReader.SegmentTypes { get; } = [JpegSegmentType.AppC]; + IReadOnlyCollection IJpegSegmentMetadataReader.SegmentTypes { get; } = [JpegSegmentType.AppC]; public IEnumerable ReadJpegSegments(IEnumerable segments) { diff --git a/MetadataExtractor/Formats/Photoshop/PhotoshopReader.cs b/MetadataExtractor/Formats/Photoshop/PhotoshopReader.cs index 77d5ed39a..198d3e746 100644 --- a/MetadataExtractor/Formats/Photoshop/PhotoshopReader.cs +++ b/MetadataExtractor/Formats/Photoshop/PhotoshopReader.cs @@ -22,7 +22,7 @@ public sealed class PhotoshopReader : JpegSegmentWithPreambleMetadataReader protected override ReadOnlySpan PreambleBytes => JpegSegmentPreamble; - public override ICollection SegmentTypes { get; } = [JpegSegmentType.AppD]; + public override IReadOnlyCollection SegmentTypes { get; } = [JpegSegmentType.AppD]; protected override IEnumerable Extract(byte[] segmentBytes, int preambleLength) { diff --git a/MetadataExtractor/Formats/Xmp/XmpReader.cs b/MetadataExtractor/Formats/Xmp/XmpReader.cs index ba9aab3cd..88c43f23d 100644 --- a/MetadataExtractor/Formats/Xmp/XmpReader.cs +++ b/MetadataExtractor/Formats/Xmp/XmpReader.cs @@ -22,7 +22,7 @@ public sealed class XmpReader : IJpegSegmentMetadataReader public static ReadOnlySpan JpegSegmentPreamble => "http://ns.adobe.com/xap/1.0/\0"u8; public static ReadOnlySpan JpegSegmentPreambleExtension => "http://ns.adobe.com/xmp/extension/\0"u8; - ICollection IJpegSegmentMetadataReader.SegmentTypes { get; } = [JpegSegmentType.App1]; + IReadOnlyCollection IJpegSegmentMetadataReader.SegmentTypes { get; } = [JpegSegmentType.App1]; public IEnumerable ReadJpegSegments(IEnumerable segments) { diff --git a/MetadataExtractor/PublicAPI/net45/PublicAPI.Shipped.txt b/MetadataExtractor/PublicAPI/net45/PublicAPI.Shipped.txt index e89f5a6c3..a8118ac25 100644 --- a/MetadataExtractor/PublicAPI/net45/PublicAPI.Shipped.txt +++ b/MetadataExtractor/PublicAPI/net45/PublicAPI.Shipped.txt @@ -2,7 +2,7 @@ abstract MetadataExtractor.Directory.Name.get -> string! abstract MetadataExtractor.Formats.Jpeg.JpegSegmentWithPreambleMetadataReader.Extract(byte[]! segmentBytes, int preambleLength) -> System.Collections.Generic.IEnumerable! abstract MetadataExtractor.Formats.Jpeg.JpegSegmentWithPreambleMetadataReader.PreambleBytes.get -> System.ReadOnlySpan -abstract MetadataExtractor.Formats.Jpeg.JpegSegmentWithPreambleMetadataReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +abstract MetadataExtractor.Formats.Jpeg.JpegSegmentWithPreambleMetadataReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! abstract MetadataExtractor.Formats.Riff.RiffChunkHandler.MinSize.get -> int abstract MetadataExtractor.Formats.Riff.RiffChunkHandler.Populate(T! directory, byte[]! payload) -> void abstract MetadataExtractor.Formats.Riff.RiffHandler.ShouldAcceptList(string! fourCc) -> bool @@ -3240,7 +3240,7 @@ MetadataExtractor.Formats.Flir.FlirReader.ExtractRawThermalImage.get -> bool MetadataExtractor.Formats.Flir.FlirReader.ExtractRawThermalImage.set -> void MetadataExtractor.Formats.Flir.FlirReader.FlirReader() -> void MetadataExtractor.Formats.Flir.FlirReader.ReadJpegSegments(System.Collections.Generic.IEnumerable! segments) -> System.Collections.Generic.IEnumerable! -MetadataExtractor.Formats.Flir.FlirReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +MetadataExtractor.Formats.Flir.FlirReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! MetadataExtractor.Formats.GeoTiff.GeoTiffDescriptor MetadataExtractor.Formats.GeoTiff.GeoTiffDescriptor.GeoTiffDescriptor(MetadataExtractor.Formats.GeoTiff.GeoTiffDirectory! directory) -> void MetadataExtractor.Formats.GeoTiff.GeoTiffDescriptor.GetChartFormatDescription() -> string? @@ -3415,7 +3415,7 @@ MetadataExtractor.Formats.Jpeg.HuffmanTablesDirectory.IsOptimized() -> bool MetadataExtractor.Formats.Jpeg.HuffmanTablesDirectory.IsTypical() -> bool MetadataExtractor.Formats.Jpeg.IJpegSegmentMetadataReader MetadataExtractor.Formats.Jpeg.IJpegSegmentMetadataReader.ReadJpegSegments(System.Collections.Generic.IEnumerable! segments) -> System.Collections.Generic.IEnumerable! -MetadataExtractor.Formats.Jpeg.IJpegSegmentMetadataReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +MetadataExtractor.Formats.Jpeg.IJpegSegmentMetadataReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! MetadataExtractor.Formats.Jpeg.JpegCommentDescriptor MetadataExtractor.Formats.Jpeg.JpegCommentDescriptor.GetJpegCommentDescription() -> string? MetadataExtractor.Formats.Jpeg.JpegCommentDescriptor.JpegCommentDescriptor(MetadataExtractor.Formats.Jpeg.JpegCommentDirectory! directory) -> void @@ -4092,7 +4092,7 @@ override MetadataExtractor.Formats.Exif.ExifDescriptorBase.GetDescription(int override MetadataExtractor.Formats.Exif.ExifIfd0Directory.Name.get -> string! override MetadataExtractor.Formats.Exif.ExifImageDirectory.Name.get -> string! override MetadataExtractor.Formats.Exif.ExifInteropDirectory.Name.get -> string! -override MetadataExtractor.Formats.Exif.ExifReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +override MetadataExtractor.Formats.Exif.ExifReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! override MetadataExtractor.Formats.Exif.ExifSubIfdDirectory.Name.get -> string! override MetadataExtractor.Formats.Exif.ExifThumbnailDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Exif.ExifThumbnailDirectory.Name.get -> string! @@ -4205,10 +4205,10 @@ override MetadataExtractor.Formats.Iptc.IptcDescriptor.GetDescription(int tagTyp override MetadataExtractor.Formats.Iptc.IptcDirectory.Name.get -> string! override MetadataExtractor.Formats.Jfif.JfifDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Jfif.JfifDirectory.Name.get -> string! -override MetadataExtractor.Formats.Jfif.JfifReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +override MetadataExtractor.Formats.Jfif.JfifReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! override MetadataExtractor.Formats.Jfxx.JfxxDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Jfxx.JfxxDirectory.Name.get -> string! -override MetadataExtractor.Formats.Jfxx.JfxxReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +override MetadataExtractor.Formats.Jfxx.JfxxReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! override MetadataExtractor.Formats.Jpeg.HuffmanTablesDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Jpeg.HuffmanTablesDirectory.Name.get -> string! override MetadataExtractor.Formats.Jpeg.JpegCommentDirectory.Name.get -> string! @@ -4226,7 +4226,7 @@ override MetadataExtractor.Formats.Pcx.PcxDirectory.Name.get -> string! override MetadataExtractor.Formats.Photoshop.DuckyDirectory.Name.get -> string! override MetadataExtractor.Formats.Photoshop.PhotoshopDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Photoshop.PhotoshopDirectory.Name.get -> string! -override MetadataExtractor.Formats.Photoshop.PhotoshopReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +override MetadataExtractor.Formats.Photoshop.PhotoshopReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! override MetadataExtractor.Formats.Photoshop.PhotoshopTiffHandler.CustomProcessTag(in MetadataExtractor.Formats.Tiff.TiffReaderContext context, int tagId, int valueOffset, int byteCount) -> bool override MetadataExtractor.Formats.Photoshop.PsdHeaderDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Photoshop.PsdHeaderDirectory.Name.get -> string! diff --git a/MetadataExtractor/PublicAPI/netstandard1.3/PublicAPI.Shipped.txt b/MetadataExtractor/PublicAPI/netstandard1.3/PublicAPI.Shipped.txt index 2b0923530..8fdf33c7f 100644 --- a/MetadataExtractor/PublicAPI/netstandard1.3/PublicAPI.Shipped.txt +++ b/MetadataExtractor/PublicAPI/netstandard1.3/PublicAPI.Shipped.txt @@ -2,7 +2,7 @@ abstract MetadataExtractor.Directory.Name.get -> string! abstract MetadataExtractor.Formats.Jpeg.JpegSegmentWithPreambleMetadataReader.Extract(byte[]! segmentBytes, int preambleLength) -> System.Collections.Generic.IEnumerable! abstract MetadataExtractor.Formats.Jpeg.JpegSegmentWithPreambleMetadataReader.PreambleBytes.get -> System.ReadOnlySpan -abstract MetadataExtractor.Formats.Jpeg.JpegSegmentWithPreambleMetadataReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +abstract MetadataExtractor.Formats.Jpeg.JpegSegmentWithPreambleMetadataReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! abstract MetadataExtractor.Formats.Riff.RiffChunkHandler.MinSize.get -> int abstract MetadataExtractor.Formats.Riff.RiffChunkHandler.Populate(T! directory, byte[]! payload) -> void abstract MetadataExtractor.Formats.Riff.RiffHandler.ShouldAcceptList(string! fourCc) -> bool @@ -3240,7 +3240,7 @@ MetadataExtractor.Formats.Flir.FlirReader.ExtractRawThermalImage.get -> bool MetadataExtractor.Formats.Flir.FlirReader.ExtractRawThermalImage.set -> void MetadataExtractor.Formats.Flir.FlirReader.FlirReader() -> void MetadataExtractor.Formats.Flir.FlirReader.ReadJpegSegments(System.Collections.Generic.IEnumerable! segments) -> System.Collections.Generic.IEnumerable! -MetadataExtractor.Formats.Flir.FlirReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +MetadataExtractor.Formats.Flir.FlirReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! MetadataExtractor.Formats.GeoTiff.GeoTiffDescriptor MetadataExtractor.Formats.GeoTiff.GeoTiffDescriptor.GeoTiffDescriptor(MetadataExtractor.Formats.GeoTiff.GeoTiffDirectory! directory) -> void MetadataExtractor.Formats.GeoTiff.GeoTiffDescriptor.GetChartFormatDescription() -> string? @@ -3415,7 +3415,7 @@ MetadataExtractor.Formats.Jpeg.HuffmanTablesDirectory.IsOptimized() -> bool MetadataExtractor.Formats.Jpeg.HuffmanTablesDirectory.IsTypical() -> bool MetadataExtractor.Formats.Jpeg.IJpegSegmentMetadataReader MetadataExtractor.Formats.Jpeg.IJpegSegmentMetadataReader.ReadJpegSegments(System.Collections.Generic.IEnumerable! segments) -> System.Collections.Generic.IEnumerable! -MetadataExtractor.Formats.Jpeg.IJpegSegmentMetadataReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +MetadataExtractor.Formats.Jpeg.IJpegSegmentMetadataReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! MetadataExtractor.Formats.Jpeg.JpegCommentDescriptor MetadataExtractor.Formats.Jpeg.JpegCommentDescriptor.GetJpegCommentDescription() -> string? MetadataExtractor.Formats.Jpeg.JpegCommentDescriptor.JpegCommentDescriptor(MetadataExtractor.Formats.Jpeg.JpegCommentDirectory! directory) -> void @@ -4085,7 +4085,7 @@ override MetadataExtractor.Formats.Exif.ExifDescriptorBase.GetDescription(int override MetadataExtractor.Formats.Exif.ExifIfd0Directory.Name.get -> string! override MetadataExtractor.Formats.Exif.ExifImageDirectory.Name.get -> string! override MetadataExtractor.Formats.Exif.ExifInteropDirectory.Name.get -> string! -override MetadataExtractor.Formats.Exif.ExifReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +override MetadataExtractor.Formats.Exif.ExifReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! override MetadataExtractor.Formats.Exif.ExifSubIfdDirectory.Name.get -> string! override MetadataExtractor.Formats.Exif.ExifThumbnailDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Exif.ExifThumbnailDirectory.Name.get -> string! @@ -4198,10 +4198,10 @@ override MetadataExtractor.Formats.Iptc.IptcDescriptor.GetDescription(int tagTyp override MetadataExtractor.Formats.Iptc.IptcDirectory.Name.get -> string! override MetadataExtractor.Formats.Jfif.JfifDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Jfif.JfifDirectory.Name.get -> string! -override MetadataExtractor.Formats.Jfif.JfifReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +override MetadataExtractor.Formats.Jfif.JfifReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! override MetadataExtractor.Formats.Jfxx.JfxxDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Jfxx.JfxxDirectory.Name.get -> string! -override MetadataExtractor.Formats.Jfxx.JfxxReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +override MetadataExtractor.Formats.Jfxx.JfxxReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! override MetadataExtractor.Formats.Jpeg.HuffmanTablesDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Jpeg.HuffmanTablesDirectory.Name.get -> string! override MetadataExtractor.Formats.Jpeg.JpegCommentDirectory.Name.get -> string! @@ -4219,7 +4219,7 @@ override MetadataExtractor.Formats.Pcx.PcxDirectory.Name.get -> string! override MetadataExtractor.Formats.Photoshop.DuckyDirectory.Name.get -> string! override MetadataExtractor.Formats.Photoshop.PhotoshopDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Photoshop.PhotoshopDirectory.Name.get -> string! -override MetadataExtractor.Formats.Photoshop.PhotoshopReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +override MetadataExtractor.Formats.Photoshop.PhotoshopReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! override MetadataExtractor.Formats.Photoshop.PhotoshopTiffHandler.CustomProcessTag(in MetadataExtractor.Formats.Tiff.TiffReaderContext context, int tagId, int valueOffset, int byteCount) -> bool override MetadataExtractor.Formats.Photoshop.PsdHeaderDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Photoshop.PsdHeaderDirectory.Name.get -> string! diff --git a/MetadataExtractor/PublicAPI/netstandard2.1/PublicAPI.Shipped.txt b/MetadataExtractor/PublicAPI/netstandard2.1/PublicAPI.Shipped.txt index cdbb85bb7..79a48d82f 100644 --- a/MetadataExtractor/PublicAPI/netstandard2.1/PublicAPI.Shipped.txt +++ b/MetadataExtractor/PublicAPI/netstandard2.1/PublicAPI.Shipped.txt @@ -2,7 +2,7 @@ abstract MetadataExtractor.Directory.Name.get -> string! abstract MetadataExtractor.Formats.Jpeg.JpegSegmentWithPreambleMetadataReader.Extract(byte[]! segmentBytes, int preambleLength) -> System.Collections.Generic.IEnumerable! abstract MetadataExtractor.Formats.Jpeg.JpegSegmentWithPreambleMetadataReader.PreambleBytes.get -> System.ReadOnlySpan -abstract MetadataExtractor.Formats.Jpeg.JpegSegmentWithPreambleMetadataReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +abstract MetadataExtractor.Formats.Jpeg.JpegSegmentWithPreambleMetadataReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! abstract MetadataExtractor.Formats.Riff.RiffChunkHandler.MinSize.get -> int abstract MetadataExtractor.Formats.Riff.RiffChunkHandler.Populate(T! directory, byte[]! payload) -> void abstract MetadataExtractor.Formats.Riff.RiffHandler.ShouldAcceptList(string! fourCc) -> bool @@ -3240,7 +3240,7 @@ MetadataExtractor.Formats.Flir.FlirReader.ExtractRawThermalImage.get -> bool MetadataExtractor.Formats.Flir.FlirReader.ExtractRawThermalImage.set -> void MetadataExtractor.Formats.Flir.FlirReader.FlirReader() -> void MetadataExtractor.Formats.Flir.FlirReader.ReadJpegSegments(System.Collections.Generic.IEnumerable! segments) -> System.Collections.Generic.IEnumerable! -MetadataExtractor.Formats.Flir.FlirReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +MetadataExtractor.Formats.Flir.FlirReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! MetadataExtractor.Formats.GeoTiff.GeoTiffDescriptor MetadataExtractor.Formats.GeoTiff.GeoTiffDescriptor.GeoTiffDescriptor(MetadataExtractor.Formats.GeoTiff.GeoTiffDirectory! directory) -> void MetadataExtractor.Formats.GeoTiff.GeoTiffDescriptor.GetChartFormatDescription() -> string? @@ -3415,7 +3415,7 @@ MetadataExtractor.Formats.Jpeg.HuffmanTablesDirectory.IsOptimized() -> bool MetadataExtractor.Formats.Jpeg.HuffmanTablesDirectory.IsTypical() -> bool MetadataExtractor.Formats.Jpeg.IJpegSegmentMetadataReader MetadataExtractor.Formats.Jpeg.IJpegSegmentMetadataReader.ReadJpegSegments(System.Collections.Generic.IEnumerable! segments) -> System.Collections.Generic.IEnumerable! -MetadataExtractor.Formats.Jpeg.IJpegSegmentMetadataReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +MetadataExtractor.Formats.Jpeg.IJpegSegmentMetadataReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! MetadataExtractor.Formats.Jpeg.JpegCommentDescriptor MetadataExtractor.Formats.Jpeg.JpegCommentDescriptor.GetJpegCommentDescription() -> string? MetadataExtractor.Formats.Jpeg.JpegCommentDescriptor.JpegCommentDescriptor(MetadataExtractor.Formats.Jpeg.JpegCommentDirectory! directory) -> void @@ -4092,7 +4092,7 @@ override MetadataExtractor.Formats.Exif.ExifDescriptorBase.GetDescription(int override MetadataExtractor.Formats.Exif.ExifIfd0Directory.Name.get -> string! override MetadataExtractor.Formats.Exif.ExifImageDirectory.Name.get -> string! override MetadataExtractor.Formats.Exif.ExifInteropDirectory.Name.get -> string! -override MetadataExtractor.Formats.Exif.ExifReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +override MetadataExtractor.Formats.Exif.ExifReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! override MetadataExtractor.Formats.Exif.ExifSubIfdDirectory.Name.get -> string! override MetadataExtractor.Formats.Exif.ExifThumbnailDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Exif.ExifThumbnailDirectory.Name.get -> string! @@ -4205,10 +4205,10 @@ override MetadataExtractor.Formats.Iptc.IptcDescriptor.GetDescription(int tagTyp override MetadataExtractor.Formats.Iptc.IptcDirectory.Name.get -> string! override MetadataExtractor.Formats.Jfif.JfifDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Jfif.JfifDirectory.Name.get -> string! -override MetadataExtractor.Formats.Jfif.JfifReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +override MetadataExtractor.Formats.Jfif.JfifReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! override MetadataExtractor.Formats.Jfxx.JfxxDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Jfxx.JfxxDirectory.Name.get -> string! -override MetadataExtractor.Formats.Jfxx.JfxxReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +override MetadataExtractor.Formats.Jfxx.JfxxReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! override MetadataExtractor.Formats.Jpeg.HuffmanTablesDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Jpeg.HuffmanTablesDirectory.Name.get -> string! override MetadataExtractor.Formats.Jpeg.JpegCommentDirectory.Name.get -> string! @@ -4226,7 +4226,7 @@ override MetadataExtractor.Formats.Pcx.PcxDirectory.Name.get -> string! override MetadataExtractor.Formats.Photoshop.DuckyDirectory.Name.get -> string! override MetadataExtractor.Formats.Photoshop.PhotoshopDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Photoshop.PhotoshopDirectory.Name.get -> string! -override MetadataExtractor.Formats.Photoshop.PhotoshopReader.SegmentTypes.get -> System.Collections.Generic.ICollection! +override MetadataExtractor.Formats.Photoshop.PhotoshopReader.SegmentTypes.get -> System.Collections.Generic.IReadOnlyCollection! override MetadataExtractor.Formats.Photoshop.PhotoshopTiffHandler.CustomProcessTag(in MetadataExtractor.Formats.Tiff.TiffReaderContext context, int tagId, int valueOffset, int byteCount) -> bool override MetadataExtractor.Formats.Photoshop.PsdHeaderDescriptor.GetDescription(int tagType) -> string? override MetadataExtractor.Formats.Photoshop.PsdHeaderDirectory.Name.get -> string! From 1b90f440098acfb29c1129ca0782b0f7a8bc6aaf Mon Sep 17 00:00:00 2001 From: Drew Noakes Date: Sat, 27 Jan 2024 21:31:09 +1100 Subject: [PATCH 4/4] Remove TODO --- MetadataExtractor/Formats/Exif/ExifDescriptorBase.cs | 2 -- 1 file changed, 2 deletions(-) diff --git a/MetadataExtractor/Formats/Exif/ExifDescriptorBase.cs b/MetadataExtractor/Formats/Exif/ExifDescriptorBase.cs index be2f4f618..897edb498 100644 --- a/MetadataExtractor/Formats/Exif/ExifDescriptorBase.cs +++ b/MetadataExtractor/Formats/Exif/ExifDescriptorBase.cs @@ -17,8 +17,6 @@ protected ExifDescriptorBase(T directory) public override string? GetDescription(int tagType) { - // TODO order case blocks and corresponding methods in the same order as the TAG_* values are defined - #pragma warning disable format return tagType switch