diff --git a/coverage.txt b/coverage.txt index d807d28..63b3c99 100644 --- a/coverage.txt +++ b/coverage.txt @@ -205,6 +205,66 @@ github.com/observerly/iris/pkg/frames/light.go:74.2,120.8 7 1 github.com/observerly/iris/pkg/frames/master.go:17.79,21.16 2 1 github.com/observerly/iris/pkg/frames/master.go:21.16,23.3 1 0 github.com/observerly/iris/pkg/frames/master.go:26.2,35.8 2 1 +github.com/observerly/iris/pkg/qsort/qsort.go:16.41,26.6 6 18 +github.com/observerly/iris/pkg/qsort/qsort.go:26.6,27.7 1 25 +github.com/observerly/iris/pkg/qsort/qsort.go:27.7,29.21 2 48 +github.com/observerly/iris/pkg/qsort/qsort.go:29.21,30.10 1 25 +github.com/observerly/iris/pkg/qsort/qsort.go:33.3,33.7 1 25 +github.com/observerly/iris/pkg/qsort/qsort.go:33.7,35.21 2 51 +github.com/observerly/iris/pkg/qsort/qsort.go:35.21,36.10 1 25 +github.com/observerly/iris/pkg/qsort/qsort.go:39.3,39.13 1 25 +github.com/observerly/iris/pkg/qsort/qsort.go:39.13,41.4 1 18 +github.com/observerly/iris/pkg/qsort/qsort.go:42.3,42.26 1 7 +github.com/observerly/iris/pkg/qsort/qsort.go:49.32,50.16 1 34 +github.com/observerly/iris/pkg/qsort/qsort.go:50.16,54.3 3 16 +github.com/observerly/iris/pkg/qsort/qsort.go:60.49,63.19 2 7 +github.com/observerly/iris/pkg/qsort/qsort.go:63.19,70.7 4 24 +github.com/observerly/iris/pkg/qsort/qsort.go:70.7,71.8 1 35 +github.com/observerly/iris/pkg/qsort/qsort.go:71.8,73.22 2 79 +github.com/observerly/iris/pkg/qsort/qsort.go:73.22,74.11 1 35 +github.com/observerly/iris/pkg/qsort/qsort.go:77.4,77.8 1 35 +github.com/observerly/iris/pkg/qsort/qsort.go:77.8,79.22 2 80 +github.com/observerly/iris/pkg/qsort/qsort.go:79.22,80.11 1 35 +github.com/observerly/iris/pkg/qsort/qsort.go:83.4,83.14 1 35 +github.com/observerly/iris/pkg/qsort/qsort.go:83.14,84.10 1 24 +github.com/observerly/iris/pkg/qsort/qsort.go:86.4,86.27 1 11 +github.com/observerly/iris/pkg/qsort/qsort.go:89.3,93.18 3 24 +github.com/observerly/iris/pkg/qsort/qsort.go:93.18,95.4 1 13 +github.com/observerly/iris/pkg/qsort/qsort.go:95.9,98.4 2 11 +github.com/observerly/iris/pkg/qsort/qsort.go:101.2,101.16 1 7 +github.com/observerly/iris/pkg/qsort/qsort.go:107.55,109.2 1 2 +github.com/observerly/iris/pkg/qsort/qsort.go:114.48,122.23 3 3 +github.com/observerly/iris/pkg/qsort/qsort.go:122.23,124.3 1 1 +github.com/observerly/iris/pkg/qsort/qsort.go:127.2,129.27 2 2 +github.com/observerly/iris/pkg/qsort/qsort.go:129.27,130.19 1 7 +github.com/observerly/iris/pkg/qsort/qsort.go:130.19,132.4 1 6 +github.com/observerly/iris/pkg/qsort/qsort.go:136.2,136.30 1 2 +github.com/observerly/iris/pkg/palette/palette.go:40.61,56.12 8 1 +github.com/observerly/iris/pkg/palette/palette.go:56.12,63.17 5 1 +github.com/observerly/iris/pkg/palette/palette.go:63.17,65.4 1 0 +github.com/observerly/iris/pkg/palette/palette.go:67.3,67.9 1 1 +github.com/observerly/iris/pkg/palette/palette.go:71.2,71.12 1 1 +github.com/observerly/iris/pkg/palette/palette.go:71.12,78.17 5 1 +github.com/observerly/iris/pkg/palette/palette.go:78.17,80.4 1 0 +github.com/observerly/iris/pkg/palette/palette.go:82.3,82.9 1 1 +github.com/observerly/iris/pkg/palette/palette.go:86.2,86.12 1 1 +github.com/observerly/iris/pkg/palette/palette.go:86.12,93.17 5 1 +github.com/observerly/iris/pkg/palette/palette.go:93.17,95.4 1 0 +github.com/observerly/iris/pkg/palette/palette.go:97.3,97.9 1 1 +github.com/observerly/iris/pkg/palette/palette.go:100.2,100.12 1 1 +github.com/observerly/iris/pkg/palette/palette.go:100.12,106.3 5 1 +github.com/observerly/iris/pkg/palette/palette.go:108.2,108.32 1 1 +github.com/observerly/iris/pkg/palette/palette.go:114.73,120.28 3 6 +github.com/observerly/iris/pkg/palette/palette.go:120.28,121.28 1 12 +github.com/observerly/iris/pkg/palette/palette.go:121.28,123.24 1 36 +github.com/observerly/iris/pkg/palette/palette.go:123.24,125.5 1 0 +github.com/observerly/iris/pkg/palette/palette.go:127.4,127.30 1 36 +github.com/observerly/iris/pkg/palette/palette.go:131.3,133.25 2 12 +github.com/observerly/iris/pkg/palette/palette.go:137.2,137.20 1 6 +github.com/observerly/iris/pkg/palette/palette.go:137.20,139.3 1 0 +github.com/observerly/iris/pkg/palette/palette.go:141.2,143.16 2 6 +github.com/observerly/iris/pkg/palette/palette.go:143.16,145.3 1 0 +github.com/observerly/iris/pkg/palette/palette.go:147.2,147.15 1 6 github.com/observerly/iris/pkg/utils/array.go:22.57,23.22 1 2 github.com/observerly/iris/pkg/utils/array.go:23.22,25.3 1 1 github.com/observerly/iris/pkg/utils/array.go:27.2,29.19 2 1 @@ -279,66 +339,6 @@ github.com/observerly/iris/pkg/utils/utils.go:72.44,74.30 2 0 github.com/observerly/iris/pkg/utils/utils.go:74.30,75.31 1 0 github.com/observerly/iris/pkg/utils/utils.go:75.31,77.7 1 0 github.com/observerly/iris/pkg/utils/utils.go:81.4,81.20 1 0 -github.com/observerly/iris/pkg/palette/palette.go:40.61,56.12 8 1 -github.com/observerly/iris/pkg/palette/palette.go:56.12,63.17 5 1 -github.com/observerly/iris/pkg/palette/palette.go:63.17,65.4 1 0 -github.com/observerly/iris/pkg/palette/palette.go:67.3,67.9 1 1 -github.com/observerly/iris/pkg/palette/palette.go:71.2,71.12 1 1 -github.com/observerly/iris/pkg/palette/palette.go:71.12,78.17 5 1 -github.com/observerly/iris/pkg/palette/palette.go:78.17,80.4 1 0 -github.com/observerly/iris/pkg/palette/palette.go:82.3,82.9 1 1 -github.com/observerly/iris/pkg/palette/palette.go:86.2,86.12 1 1 -github.com/observerly/iris/pkg/palette/palette.go:86.12,93.17 5 1 -github.com/observerly/iris/pkg/palette/palette.go:93.17,95.4 1 0 -github.com/observerly/iris/pkg/palette/palette.go:97.3,97.9 1 1 -github.com/observerly/iris/pkg/palette/palette.go:100.2,100.12 1 1 -github.com/observerly/iris/pkg/palette/palette.go:100.12,106.3 5 1 -github.com/observerly/iris/pkg/palette/palette.go:108.2,108.32 1 1 -github.com/observerly/iris/pkg/palette/palette.go:114.73,120.28 3 6 -github.com/observerly/iris/pkg/palette/palette.go:120.28,121.28 1 12 -github.com/observerly/iris/pkg/palette/palette.go:121.28,123.24 1 36 -github.com/observerly/iris/pkg/palette/palette.go:123.24,125.5 1 0 -github.com/observerly/iris/pkg/palette/palette.go:127.4,127.30 1 36 -github.com/observerly/iris/pkg/palette/palette.go:131.3,133.25 2 12 -github.com/observerly/iris/pkg/palette/palette.go:137.2,137.20 1 6 -github.com/observerly/iris/pkg/palette/palette.go:137.20,139.3 1 0 -github.com/observerly/iris/pkg/palette/palette.go:141.2,143.16 2 6 -github.com/observerly/iris/pkg/palette/palette.go:143.16,145.3 1 0 -github.com/observerly/iris/pkg/palette/palette.go:147.2,147.15 1 6 -github.com/observerly/iris/pkg/qsort/qsort.go:16.41,26.6 6 18 -github.com/observerly/iris/pkg/qsort/qsort.go:26.6,27.7 1 25 -github.com/observerly/iris/pkg/qsort/qsort.go:27.7,29.21 2 48 -github.com/observerly/iris/pkg/qsort/qsort.go:29.21,30.10 1 25 -github.com/observerly/iris/pkg/qsort/qsort.go:33.3,33.7 1 25 -github.com/observerly/iris/pkg/qsort/qsort.go:33.7,35.21 2 51 -github.com/observerly/iris/pkg/qsort/qsort.go:35.21,36.10 1 25 -github.com/observerly/iris/pkg/qsort/qsort.go:39.3,39.13 1 25 -github.com/observerly/iris/pkg/qsort/qsort.go:39.13,41.4 1 18 -github.com/observerly/iris/pkg/qsort/qsort.go:42.3,42.26 1 7 -github.com/observerly/iris/pkg/qsort/qsort.go:49.32,50.16 1 34 -github.com/observerly/iris/pkg/qsort/qsort.go:50.16,54.3 3 16 -github.com/observerly/iris/pkg/qsort/qsort.go:60.49,63.19 2 7 -github.com/observerly/iris/pkg/qsort/qsort.go:63.19,70.7 4 24 -github.com/observerly/iris/pkg/qsort/qsort.go:70.7,71.8 1 35 -github.com/observerly/iris/pkg/qsort/qsort.go:71.8,73.22 2 79 -github.com/observerly/iris/pkg/qsort/qsort.go:73.22,74.11 1 35 -github.com/observerly/iris/pkg/qsort/qsort.go:77.4,77.8 1 35 -github.com/observerly/iris/pkg/qsort/qsort.go:77.8,79.22 2 80 -github.com/observerly/iris/pkg/qsort/qsort.go:79.22,80.11 1 35 -github.com/observerly/iris/pkg/qsort/qsort.go:83.4,83.14 1 35 -github.com/observerly/iris/pkg/qsort/qsort.go:83.14,84.10 1 24 -github.com/observerly/iris/pkg/qsort/qsort.go:86.4,86.27 1 11 -github.com/observerly/iris/pkg/qsort/qsort.go:89.3,93.18 3 24 -github.com/observerly/iris/pkg/qsort/qsort.go:93.18,95.4 1 13 -github.com/observerly/iris/pkg/qsort/qsort.go:95.9,98.4 2 11 -github.com/observerly/iris/pkg/qsort/qsort.go:101.2,101.16 1 7 -github.com/observerly/iris/pkg/qsort/qsort.go:107.55,109.2 1 2 -github.com/observerly/iris/pkg/qsort/qsort.go:114.48,122.23 3 3 -github.com/observerly/iris/pkg/qsort/qsort.go:122.23,124.3 1 1 -github.com/observerly/iris/pkg/qsort/qsort.go:127.2,129.27 2 2 -github.com/observerly/iris/pkg/qsort/qsort.go:129.27,130.19 1 7 -github.com/observerly/iris/pkg/qsort/qsort.go:130.19,132.4 1 6 -github.com/observerly/iris/pkg/qsort/qsort.go:136.2,136.30 1 2 github.com/observerly/iris/pkg/vcurve/vcurve.go:55.53,61.36 3 2 github.com/observerly/iris/pkg/vcurve/vcurve.go:61.36,64.3 2 42 github.com/observerly/iris/pkg/vcurve/vcurve.go:67.2,82.3 4 2 @@ -396,24 +396,24 @@ github.com/observerly/iris/pkg/statistics/stats.go:186.2,188.15 2 4 github.com/observerly/iris/pkg/statistics/stats.go:201.56,207.24 3 5 github.com/observerly/iris/pkg/statistics/stats.go:207.24,212.3 3 770008 github.com/observerly/iris/pkg/statistics/stats.go:216.2,218.11 2 5 -github.com/observerly/iris/pkg/statistics/stats.go:234.100,240.24 3 4 -github.com/observerly/iris/pkg/statistics/stats.go:240.24,242.7 2 1153000 -github.com/observerly/iris/pkg/statistics/stats.go:242.7,245.43 2 1153120 -github.com/observerly/iris/pkg/statistics/stats.go:245.43,246.10 1 1153000 -github.com/observerly/iris/pkg/statistics/stats.go:250.3,250.16 1 1153000 -github.com/observerly/iris/pkg/statistics/stats.go:253.2,255.15 2 4 -github.com/observerly/iris/pkg/statistics/stats.go:266.96,272.24 3 4 -github.com/observerly/iris/pkg/statistics/stats.go:272.24,275.7 2 1153000 -github.com/observerly/iris/pkg/statistics/stats.go:275.7,279.43 3 1153200 -github.com/observerly/iris/pkg/statistics/stats.go:279.43,280.13 1 126 -github.com/observerly/iris/pkg/statistics/stats.go:283.4,284.45 2 1153074 -github.com/observerly/iris/pkg/statistics/stats.go:284.45,285.10 1 1153000 -github.com/observerly/iris/pkg/statistics/stats.go:289.3,289.50 1 1153000 -github.com/observerly/iris/pkg/statistics/stats.go:294.2,296.11 2 4 +github.com/observerly/iris/pkg/statistics/stats.go:234.100,240.24 3 5 +github.com/observerly/iris/pkg/statistics/stats.go:240.24,242.7 2 1537000 +github.com/observerly/iris/pkg/statistics/stats.go:242.7,245.43 2 1537078 +github.com/observerly/iris/pkg/statistics/stats.go:245.43,246.10 1 1537000 +github.com/observerly/iris/pkg/statistics/stats.go:250.3,250.16 1 1537000 +github.com/observerly/iris/pkg/statistics/stats.go:253.2,255.15 2 5 +github.com/observerly/iris/pkg/statistics/stats.go:266.96,272.24 3 5 +github.com/observerly/iris/pkg/statistics/stats.go:272.24,275.7 2 1537000 +github.com/observerly/iris/pkg/statistics/stats.go:275.7,279.43 3 1537165 +github.com/observerly/iris/pkg/statistics/stats.go:279.43,280.13 1 96 +github.com/observerly/iris/pkg/statistics/stats.go:283.4,284.45 2 1537069 +github.com/observerly/iris/pkg/statistics/stats.go:284.45,285.10 1 1537000 +github.com/observerly/iris/pkg/statistics/stats.go:289.3,289.50 1 1537000 +github.com/observerly/iris/pkg/statistics/stats.go:294.2,296.11 2 5 github.com/observerly/iris/pkg/statistics/stats.go:305.72,316.20 6 1 -github.com/observerly/iris/pkg/statistics/stats.go:316.20,330.107 6 3 +github.com/observerly/iris/pkg/statistics/stats.go:316.20,330.107 6 4 github.com/observerly/iris/pkg/statistics/stats.go:330.107,336.4 3 1 -github.com/observerly/iris/pkg/statistics/stats.go:338.3,338.38 1 2 +github.com/observerly/iris/pkg/statistics/stats.go:338.3,338.38 1 3 github.com/observerly/iris/pkg/fits/fits.go:87.82,106.2 5 14 github.com/observerly/iris/pkg/fits/fits.go:111.53,118.16 3 1 github.com/observerly/iris/pkg/fits/fits.go:118.16,120.3 1 0 @@ -472,100 +472,116 @@ github.com/observerly/iris/pkg/fits/fits.go:553.10,555.61 1 0 github.com/observerly/iris/pkg/fits/fits.go:558.10,560.61 1 0 github.com/observerly/iris/pkg/fits/fits.go:563.2,563.18 1 3 github.com/observerly/iris/pkg/fits/fits.go:569.74,571.2 1 3 -github.com/observerly/iris/pkg/fits/header.go:78.72,131.2 10 28 -github.com/observerly/iris/pkg/fits/header.go:136.79,137.27 1 42 -github.com/observerly/iris/pkg/fits/header.go:138.12,142.4 1 0 -github.com/observerly/iris/pkg/fits/header.go:143.15,147.4 1 0 -github.com/observerly/iris/pkg/fits/header.go:148.13,152.4 1 42 -github.com/observerly/iris/pkg/fits/header.go:153.14,157.4 1 0 -github.com/observerly/iris/pkg/fits/header.go:158.10,159.47 1 0 -github.com/observerly/iris/pkg/fits/header.go:161.2,161.12 1 42 -github.com/observerly/iris/pkg/fits/header.go:166.46,169.28 2 4 -github.com/observerly/iris/pkg/fits/header.go:169.28,173.38 2 4 -github.com/observerly/iris/pkg/fits/header.go:173.38,175.4 1 0 -github.com/observerly/iris/pkg/fits/header.go:178.3,181.42 2 4 -github.com/observerly/iris/pkg/fits/header.go:181.42,186.41 3 60 -github.com/observerly/iris/pkg/fits/header.go:186.41,187.13 1 0 -github.com/observerly/iris/pkg/fits/header.go:190.4,192.30 2 60 -github.com/observerly/iris/pkg/fits/header.go:196.2,196.12 1 4 -github.com/observerly/iris/pkg/fits/header.go:204.78,221.28 8 11 -github.com/observerly/iris/pkg/fits/header.go:221.28,223.3 1 2 -github.com/observerly/iris/pkg/fits/header.go:225.2,225.30 1 11 -github.com/observerly/iris/pkg/fits/header.go:225.30,227.3 1 40 -github.com/observerly/iris/pkg/fits/header.go:229.2,229.27 1 11 -github.com/observerly/iris/pkg/fits/header.go:229.27,231.3 1 19 -github.com/observerly/iris/pkg/fits/header.go:233.2,233.29 1 11 -github.com/observerly/iris/pkg/fits/header.go:233.29,235.3 1 13 -github.com/observerly/iris/pkg/fits/header.go:237.2,237.28 1 11 -github.com/observerly/iris/pkg/fits/header.go:237.28,239.3 1 13 -github.com/observerly/iris/pkg/fits/header.go:241.2,246.28 3 11 -github.com/observerly/iris/pkg/fits/header.go:246.28,247.46 1 11 -github.com/observerly/iris/pkg/fits/header.go:247.46,249.4 1 17440 -github.com/observerly/iris/pkg/fits/header.go:252.2,252.17 1 11 -github.com/observerly/iris/pkg/fits/header.go:258.77,268.37 4 65 -github.com/observerly/iris/pkg/fits/header.go:268.37,269.51 1 650 -github.com/observerly/iris/pkg/fits/header.go:269.51,270.34 1 187 -github.com/observerly/iris/pkg/fits/header.go:273.19,274.17 1 4 -github.com/observerly/iris/pkg/fits/header.go:277.19,278.58 1 0 -github.com/observerly/iris/pkg/fits/header.go:281.19,282.56 1 0 -github.com/observerly/iris/pkg/fits/header.go:285.19,286.50 1 61 -github.com/observerly/iris/pkg/fits/header.go:289.19,290.30 1 5 -github.com/observerly/iris/pkg/fits/header.go:290.30,293.6 2 5 -github.com/observerly/iris/pkg/fits/header.go:296.19,298.19 2 45 -github.com/observerly/iris/pkg/fits/header.go:298.19,300.6 1 0 -github.com/observerly/iris/pkg/fits/header.go:301.5,301.14 1 45 -github.com/observerly/iris/pkg/fits/header.go:304.19,306.19 2 1 -github.com/observerly/iris/pkg/fits/header.go:306.19,308.6 1 0 -github.com/observerly/iris/pkg/fits/header.go:309.5,309.14 1 1 -github.com/observerly/iris/pkg/fits/header.go:312.19,313.52 1 10 -github.com/observerly/iris/pkg/fits/header.go:316.19,319.19 2 0 -github.com/observerly/iris/pkg/fits/header.go:319.19,321.6 1 0 -github.com/observerly/iris/pkg/fits/header.go:324.19,325.73 1 61 -github.com/observerly/iris/pkg/fits/header.go:328.12,329.90 1 0 -github.com/observerly/iris/pkg/fits/header.go:335.2,335.31 1 65 -github.com/observerly/iris/pkg/fits/header.go:335.31,343.3 1 5 -github.com/observerly/iris/pkg/fits/header.go:346.2,346.32 1 65 -github.com/observerly/iris/pkg/fits/header.go:346.32,354.3 1 45 -github.com/observerly/iris/pkg/fits/header.go:357.2,357.34 1 65 -github.com/observerly/iris/pkg/fits/header.go:357.34,365.3 1 1 -github.com/observerly/iris/pkg/fits/header.go:368.2,368.33 1 65 -github.com/observerly/iris/pkg/fits/header.go:368.33,376.3 1 10 -github.com/observerly/iris/pkg/fits/header.go:379.2,379.36 1 65 -github.com/observerly/iris/pkg/fits/header.go:379.36,387.3 1 0 -github.com/observerly/iris/pkg/fits/header.go:389.2,389.12 1 65 -github.com/observerly/iris/pkg/fits/header.go:395.69,396.18 1 13 -github.com/observerly/iris/pkg/fits/header.go:396.18,398.3 1 0 -github.com/observerly/iris/pkg/fits/header.go:400.2,400.23 1 13 -github.com/observerly/iris/pkg/fits/header.go:400.23,402.3 1 0 -github.com/observerly/iris/pkg/fits/header.go:405.2,408.11 2 13 -github.com/observerly/iris/pkg/fits/header.go:408.11,410.3 1 13 -github.com/observerly/iris/pkg/fits/header.go:412.2,412.55 1 13 -github.com/observerly/iris/pkg/fits/header.go:418.59,419.18 1 53 -github.com/observerly/iris/pkg/fits/header.go:419.18,421.3 1 0 -github.com/observerly/iris/pkg/fits/header.go:422.2,422.23 1 53 -github.com/observerly/iris/pkg/fits/header.go:422.23,424.3 1 11 -github.com/observerly/iris/pkg/fits/header.go:427.2,429.22 2 53 -github.com/observerly/iris/pkg/fits/header.go:429.22,431.3 1 50 -github.com/observerly/iris/pkg/fits/header.go:431.8,436.23 3 3 -github.com/observerly/iris/pkg/fits/header.go:436.23,439.4 2 0 -github.com/observerly/iris/pkg/fits/header.go:441.3,441.85 1 3 -github.com/observerly/iris/pkg/fits/header.go:448.69,449.18 1 85 -github.com/observerly/iris/pkg/fits/header.go:449.18,451.3 1 0 -github.com/observerly/iris/pkg/fits/header.go:453.2,453.23 1 85 -github.com/observerly/iris/pkg/fits/header.go:453.23,455.3 1 8 -github.com/observerly/iris/pkg/fits/header.go:457.2,457.59 1 85 -github.com/observerly/iris/pkg/fits/header.go:463.73,464.18 1 13 -github.com/observerly/iris/pkg/fits/header.go:464.18,466.3 1 0 -github.com/observerly/iris/pkg/fits/header.go:468.2,468.23 1 13 -github.com/observerly/iris/pkg/fits/header.go:468.23,470.3 1 2 -github.com/observerly/iris/pkg/fits/header.go:472.2,472.59 1 13 -github.com/observerly/iris/pkg/fits/header.go:476.33,479.2 2 11 -github.com/observerly/iris/pkg/fits/header.go:482.46,519.2 22 1 -github.com/observerly/iris/pkg/fits/header.go:524.92,531.37 3 0 -github.com/observerly/iris/pkg/fits/header.go:531.37,534.22 2 0 -github.com/observerly/iris/pkg/fits/header.go:534.22,536.4 1 0 -github.com/observerly/iris/pkg/fits/header.go:539.3,542.29 2 0 -github.com/observerly/iris/pkg/fits/header.go:545.2,545.18 1 0 +github.com/observerly/iris/pkg/fits/header.go:79.72,132.2 10 28 +github.com/observerly/iris/pkg/fits/header.go:137.79,138.27 1 42 +github.com/observerly/iris/pkg/fits/header.go:139.12,143.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:144.14,148.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:149.11,150.45 1 0 +github.com/observerly/iris/pkg/fits/header.go:150.45,152.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:153.3,156.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:158.12,162.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:164.13,168.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:170.13,174.4 1 42 +github.com/observerly/iris/pkg/fits/header.go:175.12,176.30 1 0 +github.com/observerly/iris/pkg/fits/header.go:176.30,178.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:179.3,182.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:183.13,187.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:188.14,192.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:193.14,194.32 1 0 +github.com/observerly/iris/pkg/fits/header.go:194.32,196.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:197.3,200.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:201.15,205.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:206.15,207.50 1 0 +github.com/observerly/iris/pkg/fits/header.go:207.50,209.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:210.3,213.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:215.10,216.56 1 0 +github.com/observerly/iris/pkg/fits/header.go:219.2,219.12 1 42 +github.com/observerly/iris/pkg/fits/header.go:224.46,227.28 2 4 +github.com/observerly/iris/pkg/fits/header.go:227.28,231.38 2 4 +github.com/observerly/iris/pkg/fits/header.go:231.38,233.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:236.3,239.42 2 4 +github.com/observerly/iris/pkg/fits/header.go:239.42,244.41 3 60 +github.com/observerly/iris/pkg/fits/header.go:244.41,245.13 1 0 +github.com/observerly/iris/pkg/fits/header.go:248.4,250.30 2 60 +github.com/observerly/iris/pkg/fits/header.go:254.2,254.12 1 4 +github.com/observerly/iris/pkg/fits/header.go:262.78,279.28 8 11 +github.com/observerly/iris/pkg/fits/header.go:279.28,281.3 1 2 +github.com/observerly/iris/pkg/fits/header.go:283.2,283.30 1 11 +github.com/observerly/iris/pkg/fits/header.go:283.30,285.3 1 40 +github.com/observerly/iris/pkg/fits/header.go:287.2,287.27 1 11 +github.com/observerly/iris/pkg/fits/header.go:287.27,289.3 1 19 +github.com/observerly/iris/pkg/fits/header.go:291.2,291.29 1 11 +github.com/observerly/iris/pkg/fits/header.go:291.29,293.3 1 13 +github.com/observerly/iris/pkg/fits/header.go:295.2,295.28 1 11 +github.com/observerly/iris/pkg/fits/header.go:295.28,297.3 1 13 +github.com/observerly/iris/pkg/fits/header.go:299.2,304.28 3 11 +github.com/observerly/iris/pkg/fits/header.go:304.28,305.46 1 11 +github.com/observerly/iris/pkg/fits/header.go:305.46,307.4 1 17440 +github.com/observerly/iris/pkg/fits/header.go:310.2,310.17 1 11 +github.com/observerly/iris/pkg/fits/header.go:316.77,326.37 4 65 +github.com/observerly/iris/pkg/fits/header.go:326.37,327.51 1 650 +github.com/observerly/iris/pkg/fits/header.go:327.51,328.34 1 187 +github.com/observerly/iris/pkg/fits/header.go:331.19,332.17 1 4 +github.com/observerly/iris/pkg/fits/header.go:335.19,336.58 1 0 +github.com/observerly/iris/pkg/fits/header.go:339.19,340.56 1 0 +github.com/observerly/iris/pkg/fits/header.go:343.19,344.50 1 61 +github.com/observerly/iris/pkg/fits/header.go:347.19,348.30 1 5 +github.com/observerly/iris/pkg/fits/header.go:348.30,351.6 2 5 +github.com/observerly/iris/pkg/fits/header.go:354.19,356.19 2 45 +github.com/observerly/iris/pkg/fits/header.go:356.19,358.6 1 0 +github.com/observerly/iris/pkg/fits/header.go:359.5,359.14 1 45 +github.com/observerly/iris/pkg/fits/header.go:362.19,364.19 2 1 +github.com/observerly/iris/pkg/fits/header.go:364.19,366.6 1 0 +github.com/observerly/iris/pkg/fits/header.go:367.5,367.14 1 1 +github.com/observerly/iris/pkg/fits/header.go:370.19,371.52 1 10 +github.com/observerly/iris/pkg/fits/header.go:374.19,377.19 2 0 +github.com/observerly/iris/pkg/fits/header.go:377.19,379.6 1 0 +github.com/observerly/iris/pkg/fits/header.go:382.19,383.73 1 61 +github.com/observerly/iris/pkg/fits/header.go:386.12,387.90 1 0 +github.com/observerly/iris/pkg/fits/header.go:393.2,393.31 1 65 +github.com/observerly/iris/pkg/fits/header.go:393.31,401.3 1 5 +github.com/observerly/iris/pkg/fits/header.go:404.2,404.32 1 65 +github.com/observerly/iris/pkg/fits/header.go:404.32,412.3 1 45 +github.com/observerly/iris/pkg/fits/header.go:415.2,415.34 1 65 +github.com/observerly/iris/pkg/fits/header.go:415.34,423.3 1 1 +github.com/observerly/iris/pkg/fits/header.go:426.2,426.33 1 65 +github.com/observerly/iris/pkg/fits/header.go:426.33,434.3 1 10 +github.com/observerly/iris/pkg/fits/header.go:437.2,437.36 1 65 +github.com/observerly/iris/pkg/fits/header.go:437.36,445.3 1 0 +github.com/observerly/iris/pkg/fits/header.go:447.2,447.12 1 65 +github.com/observerly/iris/pkg/fits/header.go:453.69,454.18 1 13 +github.com/observerly/iris/pkg/fits/header.go:454.18,456.3 1 0 +github.com/observerly/iris/pkg/fits/header.go:458.2,458.23 1 13 +github.com/observerly/iris/pkg/fits/header.go:458.23,460.3 1 0 +github.com/observerly/iris/pkg/fits/header.go:463.2,466.11 2 13 +github.com/observerly/iris/pkg/fits/header.go:466.11,468.3 1 13 +github.com/observerly/iris/pkg/fits/header.go:470.2,470.55 1 13 +github.com/observerly/iris/pkg/fits/header.go:476.59,477.18 1 53 +github.com/observerly/iris/pkg/fits/header.go:477.18,479.3 1 0 +github.com/observerly/iris/pkg/fits/header.go:480.2,480.23 1 53 +github.com/observerly/iris/pkg/fits/header.go:480.23,482.3 1 11 +github.com/observerly/iris/pkg/fits/header.go:485.2,487.22 2 53 +github.com/observerly/iris/pkg/fits/header.go:487.22,489.3 1 50 +github.com/observerly/iris/pkg/fits/header.go:489.8,494.23 3 3 +github.com/observerly/iris/pkg/fits/header.go:494.23,497.4 2 0 +github.com/observerly/iris/pkg/fits/header.go:499.3,499.85 1 3 +github.com/observerly/iris/pkg/fits/header.go:506.69,507.18 1 85 +github.com/observerly/iris/pkg/fits/header.go:507.18,509.3 1 0 +github.com/observerly/iris/pkg/fits/header.go:511.2,511.23 1 85 +github.com/observerly/iris/pkg/fits/header.go:511.23,513.3 1 8 +github.com/observerly/iris/pkg/fits/header.go:515.2,515.59 1 85 +github.com/observerly/iris/pkg/fits/header.go:521.73,522.18 1 13 +github.com/observerly/iris/pkg/fits/header.go:522.18,524.3 1 0 +github.com/observerly/iris/pkg/fits/header.go:526.2,526.23 1 13 +github.com/observerly/iris/pkg/fits/header.go:526.23,528.3 1 2 +github.com/observerly/iris/pkg/fits/header.go:530.2,530.59 1 13 +github.com/observerly/iris/pkg/fits/header.go:534.33,537.2 2 11 +github.com/observerly/iris/pkg/fits/header.go:540.46,577.2 22 1 +github.com/observerly/iris/pkg/fits/header.go:582.92,589.37 3 0 +github.com/observerly/iris/pkg/fits/header.go:589.37,592.22 2 0 +github.com/observerly/iris/pkg/fits/header.go:592.22,594.4 1 0 +github.com/observerly/iris/pkg/fits/header.go:597.3,600.29 2 0 +github.com/observerly/iris/pkg/fits/header.go:603.2,603.18 1 0 github.com/observerly/iris/pkg/photometry/convolution.go:17.94,20.36 2 1 github.com/observerly/iris/pkg/photometry/convolution.go:20.36,21.37 1 400 github.com/observerly/iris/pkg/photometry/convolution.go:21.37,32.23 5 240000 @@ -618,7 +634,7 @@ github.com/observerly/iris/pkg/photometry/stars.go:67.101,73.2 3 2 github.com/observerly/iris/pkg/photometry/stars.go:80.97,111.2 13 1 github.com/observerly/iris/pkg/photometry/stars.go:121.119,125.25 2 95855 github.com/observerly/iris/pkg/photometry/stars.go:125.25,129.39 2 862695 -github.com/observerly/iris/pkg/photometry/stars.go:129.39,132.4 2 862170 +github.com/observerly/iris/pkg/photometry/stars.go:129.39,132.4 2 862128 github.com/observerly/iris/pkg/photometry/stars.go:135.2,137.23 2 95855 github.com/observerly/iris/pkg/photometry/stars.go:148.89,152.25 2 7 github.com/observerly/iris/pkg/photometry/stars.go:152.25,153.20 1 10253216 @@ -631,62 +647,62 @@ github.com/observerly/iris/pkg/photometry/stars.go:189.95,202.34 6 5 github.com/observerly/iris/pkg/photometry/stars.go:202.34,208.3 3 85435 github.com/observerly/iris/pkg/photometry/stars.go:210.2,217.29 4 5 github.com/observerly/iris/pkg/photometry/stars.go:217.29,223.44 3 10420 -github.com/observerly/iris/pkg/photometry/stars.go:223.44,226.4 2 10173 +github.com/observerly/iris/pkg/photometry/stars.go:223.44,226.4 2 10171 github.com/observerly/iris/pkg/photometry/stars.go:229.2,229.31 1 5 github.com/observerly/iris/pkg/photometry/stars.go:232.85,249.26 8 6 -github.com/observerly/iris/pkg/photometry/stars.go:249.26,254.38 2 8581 -github.com/observerly/iris/pkg/photometry/stars.go:254.38,255.41 1 18281 +github.com/observerly/iris/pkg/photometry/stars.go:249.26,254.38 2 8578 +github.com/observerly/iris/pkg/photometry/stars.go:254.38,255.41 1 18272 github.com/observerly/iris/pkg/photometry/stars.go:255.41,256.13 1 1130 -github.com/observerly/iris/pkg/photometry/stars.go:259.4,259.39 1 17151 -github.com/observerly/iris/pkg/photometry/stars.go:259.39,260.42 1 44135 +github.com/observerly/iris/pkg/photometry/stars.go:259.4,259.39 1 17142 +github.com/observerly/iris/pkg/photometry/stars.go:259.39,260.42 1 44108 github.com/observerly/iris/pkg/photometry/stars.go:260.42,261.14 1 4636 -github.com/observerly/iris/pkg/photometry/stars.go:265.5,268.53 2 39499 -github.com/observerly/iris/pkg/photometry/stars.go:268.53,275.22 5 224543 +github.com/observerly/iris/pkg/photometry/stars.go:265.5,268.53 2 39472 +github.com/observerly/iris/pkg/photometry/stars.go:268.53,275.22 5 223686 github.com/observerly/iris/pkg/photometry/stars.go:275.22,276.27 1 7278 -github.com/observerly/iris/pkg/photometry/stars.go:283.3,293.17 5 1303 +github.com/observerly/iris/pkg/photometry/stars.go:283.3,293.17 5 1300 github.com/observerly/iris/pkg/photometry/stars.go:293.17,295.4 1 180 -github.com/observerly/iris/pkg/photometry/stars.go:295.9,296.24 1 1123 -github.com/observerly/iris/pkg/photometry/stars.go:296.24,298.5 1 3957 -github.com/observerly/iris/pkg/photometry/stars.go:300.4,300.38 1 1123 -github.com/observerly/iris/pkg/photometry/stars.go:303.3,303.19 1 1303 +github.com/observerly/iris/pkg/photometry/stars.go:295.9,296.24 1 1120 +github.com/observerly/iris/pkg/photometry/stars.go:296.24,298.5 1 3930 +github.com/observerly/iris/pkg/photometry/stars.go:300.4,300.38 1 1120 +github.com/observerly/iris/pkg/photometry/stars.go:303.3,303.19 1 1300 github.com/observerly/iris/pkg/photometry/stars.go:306.2,309.31 3 6 github.com/observerly/iris/pkg/photometry/stars.go:319.106,321.26 1 3 -github.com/observerly/iris/pkg/photometry/stars.go:321.26,324.71 2 665 -github.com/observerly/iris/pkg/photometry/stars.go:324.71,330.39 3 1285 -github.com/observerly/iris/pkg/photometry/stars.go:330.39,331.40 1 42405 -github.com/observerly/iris/pkg/photometry/stars.go:331.40,336.46 3 1399365 -github.com/observerly/iris/pkg/photometry/stars.go:336.46,338.20 2 1377090 -github.com/observerly/iris/pkg/photometry/stars.go:338.20,340.8 1 1362841 -github.com/observerly/iris/pkg/photometry/stars.go:343.6,345.19 3 1399365 -github.com/observerly/iris/pkg/photometry/stars.go:350.4,353.19 3 1285 +github.com/observerly/iris/pkg/photometry/stars.go:321.26,324.71 2 663 +github.com/observerly/iris/pkg/photometry/stars.go:324.71,330.39 3 1281 +github.com/observerly/iris/pkg/photometry/stars.go:330.39,331.40 1 42273 +github.com/observerly/iris/pkg/photometry/stars.go:331.40,336.46 3 1395009 +github.com/observerly/iris/pkg/photometry/stars.go:336.46,338.20 2 1372734 +github.com/observerly/iris/pkg/photometry/stars.go:338.20,340.8 1 1358493 +github.com/observerly/iris/pkg/photometry/stars.go:343.6,345.19 3 1395009 +github.com/observerly/iris/pkg/photometry/stars.go:350.4,353.19 3 1281 github.com/observerly/iris/pkg/photometry/stars.go:353.19,355.5 1 0 -github.com/observerly/iris/pkg/photometry/stars.go:357.4,372.44 10 1285 -github.com/observerly/iris/pkg/photometry/stars.go:372.44,374.5 1 1285 -github.com/observerly/iris/pkg/photometry/stars.go:376.4,384.16 2 1285 +github.com/observerly/iris/pkg/photometry/stars.go:357.4,372.44 10 1281 +github.com/observerly/iris/pkg/photometry/stars.go:372.44,374.5 1 1281 +github.com/observerly/iris/pkg/photometry/stars.go:376.4,384.16 2 1281 github.com/observerly/iris/pkg/photometry/stars.go:388.2,388.14 1 3 github.com/observerly/iris/pkg/photometry/stars.go:398.143,403.26 3 2 -github.com/observerly/iris/pkg/photometry/stars.go:403.26,411.32 4 417 -github.com/observerly/iris/pkg/photometry/stars.go:411.32,412.33 1 13761 -github.com/observerly/iris/pkg/photometry/stars.go:412.33,414.29 2 454113 -github.com/observerly/iris/pkg/photometry/stars.go:414.29,415.14 1 121764 -github.com/observerly/iris/pkg/photometry/stars.go:417.5,423.47 4 332349 -github.com/observerly/iris/pkg/photometry/stars.go:423.47,425.15 2 329125 -github.com/observerly/iris/pkg/photometry/stars.go:425.15,427.7 1 180226 -github.com/observerly/iris/pkg/photometry/stars.go:429.5,431.13 3 332349 -github.com/observerly/iris/pkg/photometry/stars.go:435.3,435.18 1 417 +github.com/observerly/iris/pkg/photometry/stars.go:403.26,411.32 4 416 +github.com/observerly/iris/pkg/photometry/stars.go:411.32,412.33 1 13728 +github.com/observerly/iris/pkg/photometry/stars.go:412.33,414.29 2 453024 +github.com/observerly/iris/pkg/photometry/stars.go:414.29,415.14 1 121472 +github.com/observerly/iris/pkg/photometry/stars.go:417.5,423.47 4 331552 +github.com/observerly/iris/pkg/photometry/stars.go:423.47,425.15 2 328328 +github.com/observerly/iris/pkg/photometry/stars.go:425.15,427.7 1 179460 +github.com/observerly/iris/pkg/photometry/stars.go:429.5,431.13 3 331552 +github.com/observerly/iris/pkg/photometry/stars.go:435.3,435.18 1 416 github.com/observerly/iris/pkg/photometry/stars.go:435.18,437.4 1 0 -github.com/observerly/iris/pkg/photometry/stars.go:439.3,442.19 2 417 +github.com/observerly/iris/pkg/photometry/stars.go:439.3,442.19 2 416 github.com/observerly/iris/pkg/photometry/stars.go:442.19,443.12 1 0 -github.com/observerly/iris/pkg/photometry/stars.go:447.3,453.42 4 417 -github.com/observerly/iris/pkg/photometry/stars.go:453.42,454.43 1 6815 -github.com/observerly/iris/pkg/photometry/stars.go:454.43,457.29 2 116129 -github.com/observerly/iris/pkg/photometry/stars.go:457.29,458.14 1 44028 -github.com/observerly/iris/pkg/photometry/stars.go:461.5,465.47 3 72101 -github.com/observerly/iris/pkg/photometry/stars.go:465.47,467.15 2 71847 -github.com/observerly/iris/pkg/photometry/stars.go:467.15,469.7 1 54125 -github.com/observerly/iris/pkg/photometry/stars.go:471.5,472.18 2 72101 -github.com/observerly/iris/pkg/photometry/stars.go:477.3,481.81 3 417 -github.com/observerly/iris/pkg/photometry/stars.go:481.81,482.12 1 79 +github.com/observerly/iris/pkg/photometry/stars.go:447.3,453.42 4 416 +github.com/observerly/iris/pkg/photometry/stars.go:453.42,454.43 1 6792 +github.com/observerly/iris/pkg/photometry/stars.go:454.43,457.29 2 115600 +github.com/observerly/iris/pkg/photometry/stars.go:457.29,458.14 1 43840 +github.com/observerly/iris/pkg/photometry/stars.go:461.5,465.47 3 71760 +github.com/observerly/iris/pkg/photometry/stars.go:465.47,467.15 2 71506 +github.com/observerly/iris/pkg/photometry/stars.go:467.15,469.7 1 53798 +github.com/observerly/iris/pkg/photometry/stars.go:471.5,472.18 2 71760 +github.com/observerly/iris/pkg/photometry/stars.go:477.3,481.81 3 416 +github.com/observerly/iris/pkg/photometry/stars.go:481.81,482.12 1 78 github.com/observerly/iris/pkg/photometry/stars.go:486.3,495.25 5 338 github.com/observerly/iris/pkg/photometry/stars.go:499.2,501.39 2 2 github.com/observerly/iris/pkg/iris/monochrome.go:43.95,61.2 4 13 diff --git a/pkg/fits/header.go b/pkg/fits/header.go index dda4f57..6c97525 100644 --- a/pkg/fits/header.go +++ b/pkg/fits/header.go @@ -14,6 +14,7 @@ import ( "bytes" "fmt" "io" + "math" "regexp" "strconv" "strings" @@ -140,24 +141,81 @@ func (h *FITSHeader) Set(key string, value interface{}, comment string) error { Value: v, Comment: comment, } - case float32: - h.Floats[key] = FITSHeaderFloat{ + case string: + h.Strings[key] = FITSHeaderString{ Value: v, Comment: comment, } + case int: + if v < math.MinInt32 || v > math.MaxInt32 { + return fmt.Errorf("int value %d out of int32 range", v) + } + h.Ints[key] = FITSHeaderInt{ + Value: int32(v), + Comment: comment, + } + + case int8: + h.Ints[key] = FITSHeaderInt{ + Value: int32(v), + Comment: comment, + } + + case int16: + h.Ints[key] = FITSHeaderInt{ + Value: int32(v), + Comment: comment, + } + case int32: h.Ints[key] = FITSHeaderInt{ Value: v, Comment: comment, } - case string: - h.Strings[key] = FITSHeaderString{ + case uint: + if v > uint(math.MaxInt32) { + return fmt.Errorf("uint value %d out of int32 range", v) + } + h.Ints[key] = FITSHeaderInt{ + Value: int32(v), + Comment: comment, + } + case uint8: + h.Ints[key] = FITSHeaderInt{ + Value: int32(v), + Comment: comment, + } + case uint16: + h.Ints[key] = FITSHeaderInt{ + Value: int32(v), + Comment: comment, + } + case uint32: + if v > uint32(math.MaxInt32) { + return fmt.Errorf("uint32 value %d out of int32 range", v) + } + h.Ints[key] = FITSHeaderInt{ + Value: int32(v), + Comment: comment, + } + case float32: + h.Floats[key] = FITSHeaderFloat{ Value: v, Comment: comment, } + case float64: + if v > math.MaxFloat32 || v < -math.MaxFloat32 { + return fmt.Errorf("float64 value %f out of float32 range", v) + } + h.Floats[key] = FITSHeaderFloat{ + Value: float32(v), + Comment: comment, + } + default: - return fmt.Errorf("unsupported type: %T", v) + return fmt.Errorf("unsupported value type %T", value) } + return nil }