@crossbind/port-gdal-wasm 2.0.0-beta.50

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (667) hide show
  1. package/LICENSE +467 -0
  2. package/README.md +12 -0
  3. package/assets/gdal_empty_file.cpp +0 -0
  4. package/crossbind.build.js +23 -0
  5. package/crossbind.config.js +35 -0
  6. package/dist/prebuilt/CMakeLists.txt +57 -0
  7. package/dist/prebuilt/wasm-wasm32-mt-release/crossbind-emccflags.fingerprint +1 -0
  8. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_atomic_ops.h +89 -0
  9. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_auto_close.h +72 -0
  10. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_compressor.h +112 -0
  11. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_config.h +203 -0
  12. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_config_extras.h +33 -0
  13. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_conv.h +528 -0
  14. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_csv.h +70 -0
  15. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_error.h +505 -0
  16. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_float.h +730 -0
  17. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_hash_set.h +82 -0
  18. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_http.h +317 -0
  19. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_json.h +398 -0
  20. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_list.h +58 -0
  21. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_minixml.h +210 -0
  22. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_multiproc.h +241 -0
  23. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_port.h +1266 -0
  24. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_progress.h +48 -0
  25. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_quad_tree.h +104 -0
  26. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_spawn.h +59 -0
  27. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_string.h +985 -0
  28. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_time.h +28 -0
  29. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_virtualmem.h +347 -0
  30. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_vsi.h +885 -0
  31. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_vsi_error.h +91 -0
  32. package/dist/prebuilt/wasm-wasm32-mt-release/include/cpl_vsi_virtual.h +838 -0
  33. package/dist/prebuilt/wasm-wasm32-mt-release/include/cplkeywordparser.h +60 -0
  34. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal.h +3013 -0
  35. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_adbc.h +46 -0
  36. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_alg.h +753 -0
  37. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_alg_priv.h +444 -0
  38. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_asyncreader.h +177 -0
  39. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_colortable.h +85 -0
  40. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_computedrasterband.h +334 -0
  41. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_cpp_functions.h +414 -0
  42. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_csv.h +24 -0
  43. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_dataset.h +959 -0
  44. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_defaultoverviews.h +133 -0
  45. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_driver.h +348 -0
  46. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_drivermanager.h +115 -0
  47. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_frmts.h +230 -0
  48. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_fwd.h +219 -0
  49. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_gcp.h +140 -0
  50. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_geotransform.h +251 -0
  51. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_majorobject.h +102 -0
  52. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_maskbands.h +170 -0
  53. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_mdreader.h +240 -0
  54. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_mem.h +32 -0
  55. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_minmax_element.hpp +1489 -0
  56. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_multidim.h +1356 -0
  57. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_multidim_cpp.h +33 -0
  58. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_multidomainmetadata.h +91 -0
  59. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_openinfo.h +94 -0
  60. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_pam.h +400 -0
  61. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_pam_multidim.h +114 -0
  62. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_priv.h +69 -0
  63. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_priv_templates.hpp +1516 -0
  64. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_proxy.h +475 -0
  65. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_raster_cpp.h +46 -0
  66. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_rasterband.h +779 -0
  67. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_rasterblock.h +184 -0
  68. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_rat.h +589 -0
  69. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_relationship.h +380 -0
  70. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_simplesurf.h +579 -0
  71. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_thread_pool.h +42 -0
  72. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_typetraits.h +517 -0
  73. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_utils.h +350 -0
  74. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_vector_cpp.h +31 -0
  75. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_version.h +37 -0
  76. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdal_vrt.h +88 -0
  77. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdalalgorithm.h +19 -0
  78. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdalalgorithm_c.h +292 -0
  79. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdalalgorithm_cpp.h +3398 -0
  80. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdalcachedpixelaccessor.h +446 -0
  81. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdalgeorefpamdataset.h +72 -0
  82. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdalgrid.h +102 -0
  83. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdalgrid_priv.h +67 -0
  84. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdaljp2abstractdataset.h +60 -0
  85. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdaljp2metadata.h +236 -0
  86. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdalpansharpen.h +260 -0
  87. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdalsubdatasetinfo.h +104 -0
  88. package/dist/prebuilt/wasm-wasm32-mt-release/include/gdalwarper.h +644 -0
  89. package/dist/prebuilt/wasm-wasm32-mt-release/include/geoheif.h +58 -0
  90. package/dist/prebuilt/wasm-wasm32-mt-release/include/gnm.h +781 -0
  91. package/dist/prebuilt/wasm-wasm32-mt-release/include/gnm_api.h +99 -0
  92. package/dist/prebuilt/wasm-wasm32-mt-release/include/gnmgraph.h +257 -0
  93. package/dist/prebuilt/wasm-wasm32-mt-release/include/memdataset.h +385 -0
  94. package/dist/prebuilt/wasm-wasm32-mt-release/include/ogr_api.h +948 -0
  95. package/dist/prebuilt/wasm-wasm32-mt-release/include/ogr_core.h +1319 -0
  96. package/dist/prebuilt/wasm-wasm32-mt-release/include/ogr_feature.h +2136 -0
  97. package/dist/prebuilt/wasm-wasm32-mt-release/include/ogr_featurestyle.h +869 -0
  98. package/dist/prebuilt/wasm-wasm32-mt-release/include/ogr_geocoding.h +45 -0
  99. package/dist/prebuilt/wasm-wasm32-mt-release/include/ogr_geomcoordinateprecision.h +85 -0
  100. package/dist/prebuilt/wasm-wasm32-mt-release/include/ogr_geometry.h +4382 -0
  101. package/dist/prebuilt/wasm-wasm32-mt-release/include/ogr_p.h +330 -0
  102. package/dist/prebuilt/wasm-wasm32-mt-release/include/ogr_recordbatch.h +128 -0
  103. package/dist/prebuilt/wasm-wasm32-mt-release/include/ogr_refcountedptr.h +198 -0
  104. package/dist/prebuilt/wasm-wasm32-mt-release/include/ogr_spatialref.h +1122 -0
  105. package/dist/prebuilt/wasm-wasm32-mt-release/include/ogr_srs_api.h +1073 -0
  106. package/dist/prebuilt/wasm-wasm32-mt-release/include/ogr_swq.h +534 -0
  107. package/dist/prebuilt/wasm-wasm32-mt-release/include/ogrsf_frmts.h +803 -0
  108. package/dist/prebuilt/wasm-wasm32-mt-release/include/rawdataset.h +268 -0
  109. package/dist/prebuilt/wasm-wasm32-mt-release/include/vrtdataset.h +2595 -0
  110. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/3.20/FindLibLZMA.cmake +126 -0
  111. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/3.20/FindPostgreSQL.cmake +312 -0
  112. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/DefineFindPackage2.cmake +164 -0
  113. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/GDAL-targets-release.cmake +19 -0
  114. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/GDAL-targets.cmake +108 -0
  115. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/GDALConfig.cmake +35 -0
  116. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/GDALConfigVersion.cmake +65 -0
  117. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/GdalFindModulePath.cmake +13 -0
  118. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindBRUNSLI.cmake +74 -0
  119. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindBlosc.cmake +74 -0
  120. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindCURL.cmake +235 -0
  121. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindCryptoPP.cmake +91 -0
  122. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindDeflate.cmake +113 -0
  123. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindECW.cmake +172 -0
  124. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindEXPAT.cmake +156 -0
  125. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindExprTk.cmake +93 -0
  126. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindFYBA.cmake +38 -0
  127. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindFileGDB.cmake +93 -0
  128. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindFreeXL.cmake +67 -0
  129. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindGEOS.cmake +49 -0
  130. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindGIF.cmake +97 -0
  131. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindGeoTIFF.cmake +104 -0
  132. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindHDF4.cmake +133 -0
  133. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindHDFS.cmake +54 -0
  134. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindIDB.cmake +45 -0
  135. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindIconv.cmake +145 -0
  136. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindJSONC.cmake +48 -0
  137. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindKDU.cmake +105 -0
  138. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindLERC.cmake +46 -0
  139. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindLZ4.cmake +130 -0
  140. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindLibKML.cmake +134 -0
  141. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindMONGOCXX.cmake +56 -0
  142. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindMRSID.cmake +66 -0
  143. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindMSSQL_NCLI.cmake +86 -0
  144. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindMSSQL_ODBC.cmake +113 -0
  145. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindMySQL.cmake +83 -0
  146. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindNetCDF.cmake +209 -0
  147. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindODBC.cmake +259 -0
  148. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindODBCCPP.cmake +72 -0
  149. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindOpenCAD.cmake +97 -0
  150. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindOpenEXR.cmake +125 -0
  151. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindOpenJPEG.cmake +124 -0
  152. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindOracle.cmake +230 -0
  153. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindPCRE.cmake +28 -0
  154. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindPCRE2.cmake +27 -0
  155. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindPROJ.cmake +91 -0
  156. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindPodofo.cmake +94 -0
  157. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindPoppler.cmake +182 -0
  158. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindQHULL.cmake +44 -0
  159. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindRASTERLITE2.cmake +85 -0
  160. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindSFCGAL.cmake +87 -0
  161. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindSPATIALITE.cmake +74 -0
  162. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindSQLite3.cmake +208 -0
  163. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindShapelib.cmake +69 -0
  164. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindSpatialindex.cmake +18 -0
  165. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindTEIGHA.cmake +242 -0
  166. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindWebP.cmake +38 -0
  167. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/FindZSTD.cmake +95 -0
  168. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/packages/Findmuparser.cmake +53 -0
  169. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/thirdparty/DotnetImports.props.in +7 -0
  170. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/thirdparty/FindCSharp.cmake +72 -0
  171. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/thirdparty/FindDotnet.cmake +496 -0
  172. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/thirdparty/FindInt128.cmake +65 -0
  173. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/thirdparty/FindMono.cmake +163 -0
  174. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/thirdparty/GetGitHeadDate.cmake +33 -0
  175. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/thirdparty/GetGitRevisionDescription.cmake +181 -0
  176. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/thirdparty/GetGitRevisionDescription.cmake.in +50 -0
  177. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/thirdparty/OSXInstallDirs.cmake +214 -0
  178. package/dist/prebuilt/wasm-wasm32-mt-release/lib/cmake/gdal/thirdparty/SystemSummary.cmake +89 -0
  179. package/dist/prebuilt/wasm-wasm32-mt-release/lib/gdalplugins/drivers.ini +285 -0
  180. package/dist/prebuilt/wasm-wasm32-mt-release/lib/libgdal.a +0 -0
  181. package/dist/prebuilt/wasm-wasm32-mt-release/lib/pkgconfig/gdal.pc +17 -0
  182. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/GDALLogoBW.svg +138 -0
  183. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/GDALLogoColor.svg +126 -0
  184. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/GDALLogoGS.svg +126 -0
  185. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/LICENSE.TXT +467 -0
  186. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/MM_m_idofic.csv +320 -0
  187. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/cubewerx_extra.wkt +48 -0
  188. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/default.rsc +0 -0
  189. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/ecw_cs.wkt +1453 -0
  190. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/eedaconf.json +23 -0
  191. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/epsg.wkt +1 -0
  192. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/esri_StatePlane_extra.wkt +631 -0
  193. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/gdal_algorithm.schema.json +240 -0
  194. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/gdalg.schema.json +36 -0
  195. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/gdalicon.png +0 -0
  196. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/gdalinfo_output.schema.json +390 -0
  197. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/gdalmdiminfo_output.schema.json +393 -0
  198. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/gdaltileindex.xsd +264 -0
  199. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/gdalvrt.xsd +948 -0
  200. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/gfs.xsd +246 -0
  201. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/gml_registry.xml +117 -0
  202. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/gml_registry.xsd +66 -0
  203. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_center.csv +251 -0
  204. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_process.csv +102 -0
  205. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_subcenter.csv +63 -0
  206. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_0.csv +261 -0
  207. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_1.csv +261 -0
  208. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_13.csv +261 -0
  209. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_14.csv +261 -0
  210. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_15.csv +261 -0
  211. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_16.csv +261 -0
  212. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_17.csv +261 -0
  213. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_18.csv +261 -0
  214. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_19.csv +261 -0
  215. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_190.csv +261 -0
  216. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_191.csv +261 -0
  217. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_2.csv +261 -0
  218. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_20.csv +261 -0
  219. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_21.csv +261 -0
  220. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_22.csv +261 -0
  221. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_3.csv +261 -0
  222. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_4.csv +261 -0
  223. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_5.csv +261 -0
  224. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_6.csv +261 -0
  225. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_0_7.csv +261 -0
  226. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_10_0.csv +261 -0
  227. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_10_1.csv +261 -0
  228. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_10_191.csv +261 -0
  229. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_10_2.csv +261 -0
  230. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_10_3.csv +261 -0
  231. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_10_4.csv +261 -0
  232. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_1_0.csv +261 -0
  233. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_1_1.csv +261 -0
  234. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_1_2.csv +261 -0
  235. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_20_0.csv +261 -0
  236. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_20_1.csv +261 -0
  237. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_20_2.csv +261 -0
  238. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_20_3.csv +261 -0
  239. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_2_0.csv +261 -0
  240. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_2_3.csv +261 -0
  241. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_2_4.csv +261 -0
  242. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_2_5.csv +261 -0
  243. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_2_6.csv +261 -0
  244. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_2_7.csv +261 -0
  245. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_3_0.csv +261 -0
  246. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_3_1.csv +261 -0
  247. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_3_2.csv +243 -0
  248. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_3_3.csv +261 -0
  249. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_3_4.csv +261 -0
  250. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_3_5.csv +261 -0
  251. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_3_6.csv +261 -0
  252. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_4_0.csv +261 -0
  253. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_4_1.csv +261 -0
  254. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_4_10.csv +261 -0
  255. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_4_2.csv +261 -0
  256. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_4_3.csv +261 -0
  257. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_4_4.csv +261 -0
  258. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_4_5.csv +261 -0
  259. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_4_6.csv +261 -0
  260. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_4_7.csv +261 -0
  261. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_4_8.csv +261 -0
  262. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_4_9.csv +261 -0
  263. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_local_Canada.csv +5 -0
  264. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_local_HPC.csv +2 -0
  265. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_local_MRMS.csv +175 -0
  266. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_local_NCEP.csv +401 -0
  267. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_local_NDFD.csv +38 -0
  268. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_2_local_index.csv +7 -0
  269. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_4_5.csv +261 -0
  270. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/grib2_table_versions.csv +3 -0
  271. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/gt_datum.csv +229 -0
  272. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/gt_ellips.csv +24 -0
  273. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/header.dxf +1138 -0
  274. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/inspire_cp_BasicPropertyUnit.gfs +57 -0
  275. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/inspire_cp_CadastralBoundary.gfs +60 -0
  276. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/inspire_cp_CadastralParcel.gfs +81 -0
  277. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/inspire_cp_CadastralZoning.gfs +161 -0
  278. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_AdmArea.gfs +59 -0
  279. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_AdmBdry.gfs +49 -0
  280. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_AdmPt.gfs +59 -0
  281. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_BldA.gfs +54 -0
  282. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_BldL.gfs +54 -0
  283. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_Cntr.gfs +54 -0
  284. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_CommBdry.gfs +49 -0
  285. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_CommPt.gfs +59 -0
  286. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_Cstline.gfs +54 -0
  287. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_ElevPt.gfs +54 -0
  288. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_GCP.gfs +94 -0
  289. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_LeveeEdge.gfs +49 -0
  290. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_RailCL.gfs +54 -0
  291. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_RdASL.gfs +44 -0
  292. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_RdArea.gfs +54 -0
  293. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_RdCompt.gfs +59 -0
  294. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_RdEdg.gfs +59 -0
  295. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_RdMgtBdry.gfs +49 -0
  296. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_RdSgmtA.gfs +59 -0
  297. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_RvrMgtBdry.gfs +49 -0
  298. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_SBAPt.gfs +49 -0
  299. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_SBArea.gfs +54 -0
  300. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_SBBdry.gfs +44 -0
  301. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_WA.gfs +54 -0
  302. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_WL.gfs +54 -0
  303. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_WStrA.gfs +54 -0
  304. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/jpfgdgml_WStrL.gfs +54 -0
  305. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/leaflet_template.html +102 -0
  306. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/nitf_spec.xml +3508 -0
  307. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/nitf_spec.xsd +178 -0
  308. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/ogr_fields_override.schema.json +278 -0
  309. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/ogrinfo_output.schema.json +532 -0
  310. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/ogrvrt.xsd +526 -0
  311. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/osmconf.ini +134 -0
  312. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/ozi_datum.csv +131 -0
  313. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/ozi_ellips.csv +35 -0
  314. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/pci_datum.txt +530 -0
  315. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/pci_ellips.txt +129 -0
  316. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/pdfcomposition.xsd +703 -0
  317. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/plscenesconf.json +1985 -0
  318. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/ruian_vf_ob_v1.gfs +1455 -0
  319. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/ruian_vf_st_uvoh_v1.gfs +86 -0
  320. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/ruian_vf_st_v1.gfs +1489 -0
  321. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/ruian_vf_v1.gfs +2126 -0
  322. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/s57agencies.csv +249 -0
  323. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/s57attributes.csv +484 -0
  324. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/s57expectedinput.csv +1008 -0
  325. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/s57objectclasses.csv +287 -0
  326. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/seed_2d.dgn +0 -0
  327. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/seed_3d.dgn +0 -0
  328. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/stateplane.csv +259 -0
  329. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/template_tiles.mapml +26 -0
  330. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/tms_LINZAntarticaMapTileGrid.json +190 -0
  331. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/tms_MapML_APSTILE.json +268 -0
  332. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/tms_MapML_CBMTILE.json +346 -0
  333. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/tms_NZTM2000.json +243 -0
  334. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/trailer.dxf +434 -0
  335. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/vdv452.xml +349 -0
  336. package/dist/prebuilt/wasm-wasm32-mt-release/share/gdal/vdv452.xsd +45 -0
  337. package/dist/prebuilt/wasm-wasm32-st-release/crossbind-emccflags.fingerprint +1 -0
  338. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_atomic_ops.h +89 -0
  339. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_auto_close.h +72 -0
  340. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_compressor.h +112 -0
  341. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_config.h +203 -0
  342. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_config_extras.h +33 -0
  343. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_conv.h +528 -0
  344. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_csv.h +70 -0
  345. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_error.h +505 -0
  346. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_float.h +730 -0
  347. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_hash_set.h +82 -0
  348. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_http.h +317 -0
  349. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_json.h +398 -0
  350. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_list.h +58 -0
  351. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_minixml.h +210 -0
  352. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_multiproc.h +241 -0
  353. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_port.h +1266 -0
  354. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_progress.h +48 -0
  355. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_quad_tree.h +104 -0
  356. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_spawn.h +59 -0
  357. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_string.h +985 -0
  358. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_time.h +28 -0
  359. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_virtualmem.h +347 -0
  360. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_vsi.h +885 -0
  361. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_vsi_error.h +91 -0
  362. package/dist/prebuilt/wasm-wasm32-st-release/include/cpl_vsi_virtual.h +838 -0
  363. package/dist/prebuilt/wasm-wasm32-st-release/include/cplkeywordparser.h +60 -0
  364. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal.h +3013 -0
  365. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_adbc.h +46 -0
  366. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_alg.h +753 -0
  367. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_alg_priv.h +444 -0
  368. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_asyncreader.h +177 -0
  369. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_colortable.h +85 -0
  370. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_computedrasterband.h +334 -0
  371. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_cpp_functions.h +414 -0
  372. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_csv.h +24 -0
  373. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_dataset.h +959 -0
  374. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_defaultoverviews.h +133 -0
  375. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_driver.h +348 -0
  376. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_drivermanager.h +115 -0
  377. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_frmts.h +230 -0
  378. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_fwd.h +219 -0
  379. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_gcp.h +140 -0
  380. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_geotransform.h +251 -0
  381. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_majorobject.h +102 -0
  382. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_maskbands.h +170 -0
  383. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_mdreader.h +240 -0
  384. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_mem.h +32 -0
  385. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_minmax_element.hpp +1489 -0
  386. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_multidim.h +1356 -0
  387. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_multidim_cpp.h +33 -0
  388. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_multidomainmetadata.h +91 -0
  389. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_openinfo.h +94 -0
  390. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_pam.h +400 -0
  391. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_pam_multidim.h +114 -0
  392. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_priv.h +69 -0
  393. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_priv_templates.hpp +1516 -0
  394. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_proxy.h +475 -0
  395. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_raster_cpp.h +46 -0
  396. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_rasterband.h +779 -0
  397. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_rasterblock.h +184 -0
  398. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_rat.h +589 -0
  399. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_relationship.h +380 -0
  400. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_simplesurf.h +579 -0
  401. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_thread_pool.h +42 -0
  402. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_typetraits.h +517 -0
  403. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_utils.h +350 -0
  404. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_vector_cpp.h +31 -0
  405. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_version.h +37 -0
  406. package/dist/prebuilt/wasm-wasm32-st-release/include/gdal_vrt.h +88 -0
  407. package/dist/prebuilt/wasm-wasm32-st-release/include/gdalalgorithm.h +19 -0
  408. package/dist/prebuilt/wasm-wasm32-st-release/include/gdalalgorithm_c.h +292 -0
  409. package/dist/prebuilt/wasm-wasm32-st-release/include/gdalalgorithm_cpp.h +3398 -0
  410. package/dist/prebuilt/wasm-wasm32-st-release/include/gdalcachedpixelaccessor.h +446 -0
  411. package/dist/prebuilt/wasm-wasm32-st-release/include/gdalgeorefpamdataset.h +72 -0
  412. package/dist/prebuilt/wasm-wasm32-st-release/include/gdalgrid.h +102 -0
  413. package/dist/prebuilt/wasm-wasm32-st-release/include/gdalgrid_priv.h +67 -0
  414. package/dist/prebuilt/wasm-wasm32-st-release/include/gdaljp2abstractdataset.h +60 -0
  415. package/dist/prebuilt/wasm-wasm32-st-release/include/gdaljp2metadata.h +236 -0
  416. package/dist/prebuilt/wasm-wasm32-st-release/include/gdalpansharpen.h +260 -0
  417. package/dist/prebuilt/wasm-wasm32-st-release/include/gdalsubdatasetinfo.h +104 -0
  418. package/dist/prebuilt/wasm-wasm32-st-release/include/gdalwarper.h +644 -0
  419. package/dist/prebuilt/wasm-wasm32-st-release/include/geoheif.h +58 -0
  420. package/dist/prebuilt/wasm-wasm32-st-release/include/gnm.h +781 -0
  421. package/dist/prebuilt/wasm-wasm32-st-release/include/gnm_api.h +99 -0
  422. package/dist/prebuilt/wasm-wasm32-st-release/include/gnmgraph.h +257 -0
  423. package/dist/prebuilt/wasm-wasm32-st-release/include/memdataset.h +385 -0
  424. package/dist/prebuilt/wasm-wasm32-st-release/include/ogr_api.h +948 -0
  425. package/dist/prebuilt/wasm-wasm32-st-release/include/ogr_core.h +1319 -0
  426. package/dist/prebuilt/wasm-wasm32-st-release/include/ogr_feature.h +2136 -0
  427. package/dist/prebuilt/wasm-wasm32-st-release/include/ogr_featurestyle.h +869 -0
  428. package/dist/prebuilt/wasm-wasm32-st-release/include/ogr_geocoding.h +45 -0
  429. package/dist/prebuilt/wasm-wasm32-st-release/include/ogr_geomcoordinateprecision.h +85 -0
  430. package/dist/prebuilt/wasm-wasm32-st-release/include/ogr_geometry.h +4382 -0
  431. package/dist/prebuilt/wasm-wasm32-st-release/include/ogr_p.h +330 -0
  432. package/dist/prebuilt/wasm-wasm32-st-release/include/ogr_recordbatch.h +128 -0
  433. package/dist/prebuilt/wasm-wasm32-st-release/include/ogr_refcountedptr.h +198 -0
  434. package/dist/prebuilt/wasm-wasm32-st-release/include/ogr_spatialref.h +1122 -0
  435. package/dist/prebuilt/wasm-wasm32-st-release/include/ogr_srs_api.h +1073 -0
  436. package/dist/prebuilt/wasm-wasm32-st-release/include/ogr_swq.h +534 -0
  437. package/dist/prebuilt/wasm-wasm32-st-release/include/ogrsf_frmts.h +803 -0
  438. package/dist/prebuilt/wasm-wasm32-st-release/include/rawdataset.h +268 -0
  439. package/dist/prebuilt/wasm-wasm32-st-release/include/vrtdataset.h +2595 -0
  440. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/3.20/FindLibLZMA.cmake +126 -0
  441. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/3.20/FindPostgreSQL.cmake +312 -0
  442. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/DefineFindPackage2.cmake +164 -0
  443. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/GDAL-targets-release.cmake +19 -0
  444. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/GDAL-targets.cmake +108 -0
  445. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/GDALConfig.cmake +35 -0
  446. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/GDALConfigVersion.cmake +65 -0
  447. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/GdalFindModulePath.cmake +13 -0
  448. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindBRUNSLI.cmake +74 -0
  449. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindBlosc.cmake +74 -0
  450. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindCURL.cmake +235 -0
  451. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindCryptoPP.cmake +91 -0
  452. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindDeflate.cmake +113 -0
  453. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindECW.cmake +172 -0
  454. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindEXPAT.cmake +156 -0
  455. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindExprTk.cmake +93 -0
  456. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindFYBA.cmake +38 -0
  457. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindFileGDB.cmake +93 -0
  458. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindFreeXL.cmake +67 -0
  459. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindGEOS.cmake +49 -0
  460. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindGIF.cmake +97 -0
  461. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindGeoTIFF.cmake +104 -0
  462. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindHDF4.cmake +133 -0
  463. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindHDFS.cmake +54 -0
  464. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindIDB.cmake +45 -0
  465. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindIconv.cmake +145 -0
  466. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindJSONC.cmake +48 -0
  467. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindKDU.cmake +105 -0
  468. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindLERC.cmake +46 -0
  469. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindLZ4.cmake +130 -0
  470. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindLibKML.cmake +134 -0
  471. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindMONGOCXX.cmake +56 -0
  472. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindMRSID.cmake +66 -0
  473. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindMSSQL_NCLI.cmake +86 -0
  474. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindMSSQL_ODBC.cmake +113 -0
  475. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindMySQL.cmake +83 -0
  476. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindNetCDF.cmake +209 -0
  477. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindODBC.cmake +259 -0
  478. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindODBCCPP.cmake +72 -0
  479. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindOpenCAD.cmake +97 -0
  480. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindOpenEXR.cmake +125 -0
  481. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindOpenJPEG.cmake +124 -0
  482. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindOracle.cmake +230 -0
  483. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindPCRE.cmake +28 -0
  484. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindPCRE2.cmake +27 -0
  485. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindPROJ.cmake +91 -0
  486. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindPodofo.cmake +94 -0
  487. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindPoppler.cmake +182 -0
  488. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindQHULL.cmake +44 -0
  489. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindRASTERLITE2.cmake +85 -0
  490. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindSFCGAL.cmake +87 -0
  491. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindSPATIALITE.cmake +74 -0
  492. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindSQLite3.cmake +208 -0
  493. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindShapelib.cmake +69 -0
  494. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindSpatialindex.cmake +18 -0
  495. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindTEIGHA.cmake +242 -0
  496. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindWebP.cmake +38 -0
  497. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/FindZSTD.cmake +95 -0
  498. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/packages/Findmuparser.cmake +53 -0
  499. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/thirdparty/DotnetImports.props.in +7 -0
  500. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/thirdparty/FindCSharp.cmake +72 -0
  501. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/thirdparty/FindDotnet.cmake +496 -0
  502. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/thirdparty/FindInt128.cmake +65 -0
  503. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/thirdparty/FindMono.cmake +163 -0
  504. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/thirdparty/GetGitHeadDate.cmake +33 -0
  505. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/thirdparty/GetGitRevisionDescription.cmake +181 -0
  506. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/thirdparty/GetGitRevisionDescription.cmake.in +50 -0
  507. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/thirdparty/OSXInstallDirs.cmake +214 -0
  508. package/dist/prebuilt/wasm-wasm32-st-release/lib/cmake/gdal/thirdparty/SystemSummary.cmake +89 -0
  509. package/dist/prebuilt/wasm-wasm32-st-release/lib/gdalplugins/drivers.ini +285 -0
  510. package/dist/prebuilt/wasm-wasm32-st-release/lib/libgdal.a +0 -0
  511. package/dist/prebuilt/wasm-wasm32-st-release/lib/pkgconfig/gdal.pc +17 -0
  512. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/GDALLogoBW.svg +138 -0
  513. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/GDALLogoColor.svg +126 -0
  514. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/GDALLogoGS.svg +126 -0
  515. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/LICENSE.TXT +467 -0
  516. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/MM_m_idofic.csv +320 -0
  517. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/cubewerx_extra.wkt +48 -0
  518. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/default.rsc +0 -0
  519. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/ecw_cs.wkt +1453 -0
  520. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/eedaconf.json +23 -0
  521. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/epsg.wkt +1 -0
  522. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/esri_StatePlane_extra.wkt +631 -0
  523. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/gdal_algorithm.schema.json +240 -0
  524. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/gdalg.schema.json +36 -0
  525. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/gdalicon.png +0 -0
  526. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/gdalinfo_output.schema.json +390 -0
  527. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/gdalmdiminfo_output.schema.json +393 -0
  528. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/gdaltileindex.xsd +264 -0
  529. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/gdalvrt.xsd +948 -0
  530. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/gfs.xsd +246 -0
  531. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/gml_registry.xml +117 -0
  532. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/gml_registry.xsd +66 -0
  533. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_center.csv +251 -0
  534. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_process.csv +102 -0
  535. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_subcenter.csv +63 -0
  536. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_0.csv +261 -0
  537. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_1.csv +261 -0
  538. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_13.csv +261 -0
  539. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_14.csv +261 -0
  540. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_15.csv +261 -0
  541. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_16.csv +261 -0
  542. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_17.csv +261 -0
  543. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_18.csv +261 -0
  544. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_19.csv +261 -0
  545. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_190.csv +261 -0
  546. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_191.csv +261 -0
  547. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_2.csv +261 -0
  548. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_20.csv +261 -0
  549. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_21.csv +261 -0
  550. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_22.csv +261 -0
  551. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_3.csv +261 -0
  552. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_4.csv +261 -0
  553. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_5.csv +261 -0
  554. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_6.csv +261 -0
  555. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_0_7.csv +261 -0
  556. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_10_0.csv +261 -0
  557. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_10_1.csv +261 -0
  558. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_10_191.csv +261 -0
  559. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_10_2.csv +261 -0
  560. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_10_3.csv +261 -0
  561. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_10_4.csv +261 -0
  562. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_1_0.csv +261 -0
  563. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_1_1.csv +261 -0
  564. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_1_2.csv +261 -0
  565. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_20_0.csv +261 -0
  566. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_20_1.csv +261 -0
  567. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_20_2.csv +261 -0
  568. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_20_3.csv +261 -0
  569. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_2_0.csv +261 -0
  570. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_2_3.csv +261 -0
  571. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_2_4.csv +261 -0
  572. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_2_5.csv +261 -0
  573. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_2_6.csv +261 -0
  574. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_2_7.csv +261 -0
  575. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_3_0.csv +261 -0
  576. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_3_1.csv +261 -0
  577. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_3_2.csv +243 -0
  578. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_3_3.csv +261 -0
  579. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_3_4.csv +261 -0
  580. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_3_5.csv +261 -0
  581. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_3_6.csv +261 -0
  582. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_4_0.csv +261 -0
  583. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_4_1.csv +261 -0
  584. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_4_10.csv +261 -0
  585. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_4_2.csv +261 -0
  586. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_4_3.csv +261 -0
  587. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_4_4.csv +261 -0
  588. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_4_5.csv +261 -0
  589. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_4_6.csv +261 -0
  590. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_4_7.csv +261 -0
  591. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_4_8.csv +261 -0
  592. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_4_9.csv +261 -0
  593. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_local_Canada.csv +5 -0
  594. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_local_HPC.csv +2 -0
  595. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_local_MRMS.csv +175 -0
  596. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_local_NCEP.csv +401 -0
  597. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_local_NDFD.csv +38 -0
  598. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_2_local_index.csv +7 -0
  599. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_4_5.csv +261 -0
  600. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/grib2_table_versions.csv +3 -0
  601. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/gt_datum.csv +229 -0
  602. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/gt_ellips.csv +24 -0
  603. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/header.dxf +1138 -0
  604. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/inspire_cp_BasicPropertyUnit.gfs +57 -0
  605. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/inspire_cp_CadastralBoundary.gfs +60 -0
  606. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/inspire_cp_CadastralParcel.gfs +81 -0
  607. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/inspire_cp_CadastralZoning.gfs +161 -0
  608. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_AdmArea.gfs +59 -0
  609. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_AdmBdry.gfs +49 -0
  610. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_AdmPt.gfs +59 -0
  611. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_BldA.gfs +54 -0
  612. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_BldL.gfs +54 -0
  613. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_Cntr.gfs +54 -0
  614. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_CommBdry.gfs +49 -0
  615. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_CommPt.gfs +59 -0
  616. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_Cstline.gfs +54 -0
  617. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_ElevPt.gfs +54 -0
  618. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_GCP.gfs +94 -0
  619. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_LeveeEdge.gfs +49 -0
  620. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_RailCL.gfs +54 -0
  621. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_RdASL.gfs +44 -0
  622. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_RdArea.gfs +54 -0
  623. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_RdCompt.gfs +59 -0
  624. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_RdEdg.gfs +59 -0
  625. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_RdMgtBdry.gfs +49 -0
  626. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_RdSgmtA.gfs +59 -0
  627. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_RvrMgtBdry.gfs +49 -0
  628. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_SBAPt.gfs +49 -0
  629. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_SBArea.gfs +54 -0
  630. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_SBBdry.gfs +44 -0
  631. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_WA.gfs +54 -0
  632. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_WL.gfs +54 -0
  633. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_WStrA.gfs +54 -0
  634. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/jpfgdgml_WStrL.gfs +54 -0
  635. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/leaflet_template.html +102 -0
  636. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/nitf_spec.xml +3508 -0
  637. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/nitf_spec.xsd +178 -0
  638. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/ogr_fields_override.schema.json +278 -0
  639. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/ogrinfo_output.schema.json +532 -0
  640. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/ogrvrt.xsd +526 -0
  641. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/osmconf.ini +134 -0
  642. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/ozi_datum.csv +131 -0
  643. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/ozi_ellips.csv +35 -0
  644. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/pci_datum.txt +530 -0
  645. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/pci_ellips.txt +129 -0
  646. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/pdfcomposition.xsd +703 -0
  647. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/plscenesconf.json +1985 -0
  648. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/ruian_vf_ob_v1.gfs +1455 -0
  649. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/ruian_vf_st_uvoh_v1.gfs +86 -0
  650. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/ruian_vf_st_v1.gfs +1489 -0
  651. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/ruian_vf_v1.gfs +2126 -0
  652. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/s57agencies.csv +249 -0
  653. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/s57attributes.csv +484 -0
  654. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/s57expectedinput.csv +1008 -0
  655. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/s57objectclasses.csv +287 -0
  656. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/seed_2d.dgn +0 -0
  657. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/seed_3d.dgn +0 -0
  658. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/stateplane.csv +259 -0
  659. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/template_tiles.mapml +26 -0
  660. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/tms_LINZAntarticaMapTileGrid.json +190 -0
  661. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/tms_MapML_APSTILE.json +268 -0
  662. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/tms_MapML_CBMTILE.json +346 -0
  663. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/tms_NZTM2000.json +243 -0
  664. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/trailer.dxf +434 -0
  665. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/vdv452.xml +349 -0
  666. package/dist/prebuilt/wasm-wasm32-st-release/share/gdal/vdv452.xsd +45 -0
  667. package/package.json +49 -0
@@ -0,0 +1,985 @@
1
+ /**********************************************************************
2
+ *
3
+ * Name: cpl_string.h
4
+ * Project: CPL - Common Portability Library
5
+ * Purpose: String and StringList functions.
6
+ * Author: Daniel Morissette, dmorissette@mapgears.com
7
+ *
8
+ **********************************************************************
9
+ * Copyright (c) 1998, Daniel Morissette
10
+ * Copyright (c) 2008-2014, Even Rouault <even dot rouault at spatialys.com>
11
+ *
12
+ * SPDX-License-Identifier: MIT
13
+ ****************************************************************************/
14
+
15
+ #ifndef CPL_STRING_H_INCLUDED
16
+ #define CPL_STRING_H_INCLUDED
17
+
18
+ #include "cpl_error.h"
19
+ #include "cpl_conv.h"
20
+ #include "cpl_vsi.h"
21
+
22
+ #include <stdbool.h>
23
+
24
+ /**
25
+ * \file cpl_string.h
26
+ *
27
+ * Various convenience functions for working with strings and string lists.
28
+ *
29
+ * A StringList is just an array of strings with the last pointer being
30
+ * NULL. An empty StringList may be either a NULL pointer, or a pointer to
31
+ * a pointer memory location with a NULL value.
32
+ *
33
+ * A common convention for StringLists is to use them to store name/value
34
+ * lists. In this case the contents are treated like a dictionary of
35
+ * name/value pairs. The actual data is formatted with each string having
36
+ * the format "<name>:<value>" (though "=" is also an acceptable separator).
37
+ * A number of the functions in the file operate on name/value style
38
+ * string lists (such as CSLSetNameValue(), and CSLFetchNameValue()).
39
+ *
40
+ * To some extent the CPLStringList C++ class can be used to abstract
41
+ * managing string lists a bit but still be able to return them from C
42
+ * functions.
43
+ *
44
+ */
45
+
46
+ CPL_C_START
47
+
48
+ char CPL_DLL **CSLAddString(char **papszStrList,
49
+ const char *pszNewString) CPL_WARN_UNUSED_RESULT;
50
+ char CPL_DLL **
51
+ CSLAddStringMayFail(char **papszStrList,
52
+ const char *pszNewString) CPL_WARN_UNUSED_RESULT;
53
+ int CPL_DLL CSLCount(CSLConstList papszStrList);
54
+ const char CPL_DLL *CSLGetField(CSLConstList, int);
55
+ void CPL_DLL CPL_STDCALL CSLDestroy(char **papszStrList);
56
+ char CPL_DLL **CSLDuplicate(CSLConstList papszStrList) CPL_WARN_UNUSED_RESULT;
57
+ char CPL_DLL **CSLMerge(char **papszOrig,
58
+ CSLConstList papszOverride) CPL_WARN_UNUSED_RESULT;
59
+
60
+ char CPL_DLL **CSLTokenizeString(const char *pszString) CPL_WARN_UNUSED_RESULT;
61
+ char CPL_DLL **
62
+ CSLTokenizeStringComplex(const char *pszString, const char *pszDelimiter,
63
+ int bHonourStrings,
64
+ int bAllowEmptyTokens) CPL_WARN_UNUSED_RESULT;
65
+ char CPL_DLL **CSLTokenizeString2(const char *pszString,
66
+ const char *pszDelimiter,
67
+ int nCSLTFlags) CPL_WARN_UNUSED_RESULT;
68
+
69
+ /** Flag for CSLTokenizeString2() to honour strings */
70
+ #define CSLT_HONOURSTRINGS 0x0001
71
+ /** Flag for CSLTokenizeString2() to allow empty tokens */
72
+ #define CSLT_ALLOWEMPTYTOKENS 0x0002
73
+ /** Flag for CSLTokenizeString2() to preserve quotes */
74
+ #define CSLT_PRESERVEQUOTES 0x0004
75
+ /** Flag for CSLTokenizeString2() to preserve escape characters */
76
+ #define CSLT_PRESERVEESCAPES 0x0008
77
+ /** Flag for CSLTokenizeString2() to strip leading spaces */
78
+ #define CSLT_STRIPLEADSPACES 0x0010
79
+ /** Flag for CSLTokenizeString2() to strip trailing spaces */
80
+ #define CSLT_STRIPENDSPACES 0x0020
81
+
82
+ int CPL_DLL CSLPrint(CSLConstList papszStrList, FILE *fpOut);
83
+ char CPL_DLL **CSLLoad(const char *pszFname) CPL_WARN_UNUSED_RESULT;
84
+ char CPL_DLL **CSLLoad2(const char *pszFname, int nMaxLines, int nMaxCols,
85
+ CSLConstList papszOptions) CPL_WARN_UNUSED_RESULT;
86
+ int CPL_DLL CSLSave(CSLConstList papszStrList, const char *pszFname);
87
+
88
+ char CPL_DLL **
89
+ CSLInsertStrings(char **papszStrList, int nInsertAtLineNo,
90
+ CSLConstList papszNewLines) CPL_WARN_UNUSED_RESULT;
91
+ char CPL_DLL **CSLInsertString(char **papszStrList, int nInsertAtLineNo,
92
+ const char *pszNewLine) CPL_WARN_UNUSED_RESULT;
93
+ char CPL_DLL **
94
+ CSLRemoveStrings(char **papszStrList, int nFirstLineToDelete, int nNumToRemove,
95
+ char ***ppapszRetStrings) CPL_WARN_UNUSED_RESULT;
96
+ int CPL_DLL CSLFindString(CSLConstList papszList, const char *pszTarget);
97
+ int CPL_DLL CSLFindStringCaseSensitive(CSLConstList papszList,
98
+ const char *pszTarget);
99
+ int CPL_DLL CSLPartialFindString(CSLConstList papszHaystack,
100
+ const char *pszNeedle);
101
+ int CPL_DLL CSLFindName(CSLConstList papszStrList, const char *pszName);
102
+ int CPL_DLL CSLFetchBoolean(CSLConstList papszStrList, const char *pszKey,
103
+ int bDefault);
104
+
105
+ /* TODO: Deprecate CSLTestBoolean. Remove in GDAL 3.x. */
106
+ int CPL_DLL CSLTestBoolean(const char *pszValue);
107
+ /* Do not use CPLTestBoolean in C++ code. Use CPLTestBool. */
108
+ int CPL_DLL CPLTestBoolean(const char *pszValue);
109
+
110
+ bool CPL_DLL CPLTestBool(const char *pszValue);
111
+ bool CPL_DLL CPLFetchBool(CSLConstList papszStrList, const char *pszKey,
112
+ bool bDefault);
113
+ #ifdef __cplusplus
114
+ CPL_C_END
115
+
116
+ /*! @cond Doxygen_Suppress */
117
+ inline bool CPLFetchBool(CSLConstList papszStrList, const char *pszKey,
118
+ int bDefault)
119
+ {
120
+ return CPLFetchBool(papszStrList, pszKey, bDefault != 0);
121
+ }
122
+
123
+ bool CPLFetchBool(CSLConstList papszStrList, const char *pszKey,
124
+ const char *) = delete;
125
+
126
+ /*! @endcond */
127
+ CPL_C_START
128
+ #endif
129
+ CPLErr CPL_DLL CPLParseMemorySize(const char *pszValue, GIntBig *pnValue,
130
+ bool *pbUnitSpecified);
131
+
132
+ const char CPL_DLL *CPLParseNameValue(const char *pszNameValue, char **ppszKey);
133
+ const char CPL_DLL *CPLParseNameValueSep(const char *pszNameValue,
134
+ char **ppszKey, char chSep);
135
+
136
+ const char CPL_DLL *CSLFetchNameValue(CSLConstList papszStrList,
137
+ const char *pszName);
138
+ const char CPL_DLL *CSLFetchNameValueDef(CSLConstList papszStrList,
139
+ const char *pszName,
140
+ const char *pszDefault);
141
+ char CPL_DLL **CSLFetchNameValueMultiple(CSLConstList papszStrList,
142
+ const char *pszName);
143
+ char CPL_DLL **CSLAddNameValue(char **papszStrList, const char *pszName,
144
+ const char *pszValue) CPL_WARN_UNUSED_RESULT;
145
+ char CPL_DLL **CSLSetNameValue(char **papszStrList, const char *pszName,
146
+ const char *pszValue) CPL_WARN_UNUSED_RESULT;
147
+ void CPL_DLL CSLSetNameValueSeparator(char **papszStrList,
148
+ const char *pszSeparator);
149
+
150
+ char CPL_DLL **CSLParseCommandLine(const char *pszCommandLine);
151
+
152
+ /** Scheme for CPLEscapeString()/CPLUnescapeString() for backlash quoting */
153
+ #define CPLES_BackslashQuotable 0
154
+ /** Scheme for CPLEscapeString()/CPLUnescapeString() for XML */
155
+ #define CPLES_XML 1
156
+ /** Scheme for CPLEscapeString()/CPLUnescapeString() for URL */
157
+ #define CPLES_URL 2
158
+ /** Scheme for CPLEscapeString()/CPLUnescapeString() for SQL */
159
+ #define CPLES_SQL 3
160
+ /** Scheme for CPLEscapeString()/CPLUnescapeString() for CSV */
161
+ #define CPLES_CSV 4
162
+ /** Scheme for CPLEscapeString()/CPLUnescapeString() for XML (preserves quotes)
163
+ */
164
+ #define CPLES_XML_BUT_QUOTES 5
165
+ /** Scheme for CPLEscapeString()/CPLUnescapeString() for CSV (forced quoting) */
166
+ #define CPLES_CSV_FORCE_QUOTING 6
167
+ /** Scheme for CPLEscapeString()/CPLUnescapeString() for SQL identifiers */
168
+ #define CPLES_SQLI 7
169
+
170
+ char CPL_DLL *CPLEscapeString(const char *pszString, int nLength,
171
+ int nScheme) CPL_WARN_UNUSED_RESULT;
172
+ char CPL_DLL *CPLUnescapeString(const char *pszString, int *pnLength,
173
+ int nScheme) CPL_WARN_UNUSED_RESULT;
174
+
175
+ char CPL_DLL *CPLBinaryToHex(int nBytes,
176
+ const GByte *pabyData) CPL_WARN_UNUSED_RESULT;
177
+ GByte CPL_DLL *CPLHexToBinary(const char *pszHex,
178
+ int *pnBytes) CPL_WARN_UNUSED_RESULT;
179
+
180
+ char CPL_DLL *CPLBase64Encode(int nBytes,
181
+ const GByte *pabyData) CPL_WARN_UNUSED_RESULT;
182
+ int CPL_DLL CPLBase64DecodeInPlace(GByte *pszBase64) CPL_WARN_UNUSED_RESULT;
183
+
184
+ /** Type of value */
185
+ typedef enum
186
+ {
187
+ CPL_VALUE_STRING, /**< String */
188
+ CPL_VALUE_REAL, /**< Real number */
189
+ CPL_VALUE_INTEGER /**< Integer */
190
+ } CPLValueType;
191
+
192
+ CPLValueType CPL_DLL CPLGetValueType(const char *pszValue);
193
+
194
+ int CPL_DLL CPLToupper(int c);
195
+ int CPL_DLL CPLTolower(int c);
196
+
197
+ size_t CPL_DLL CPLStrlcpy(char *pszDest, const char *pszSrc, size_t nDestSize);
198
+ size_t CPL_DLL CPLStrlcat(char *pszDest, const char *pszSrc, size_t nDestSize);
199
+ size_t CPL_DLL CPLStrnlen(const char *pszStr, size_t nMaxLen);
200
+
201
+ /* -------------------------------------------------------------------- */
202
+ /* Locale independent formatting functions. */
203
+ /* -------------------------------------------------------------------- */
204
+ int CPL_DLL CPLvsnprintf(char *str, size_t size,
205
+ CPL_FORMAT_STRING(const char *fmt), va_list args)
206
+ CPL_PRINT_FUNC_FORMAT(3, 0);
207
+
208
+ /* ALIAS_CPLSNPRINTF_AS_SNPRINTF might be defined to enable GCC 7 */
209
+ /* -Wformat-truncation= warnings, but shouldn't be set for normal use */
210
+ #if defined(ALIAS_CPLSNPRINTF_AS_SNPRINTF)
211
+ #define CPLsnprintf snprintf
212
+ #else
213
+ int CPL_DLL CPLsnprintf(char *str, size_t size,
214
+ CPL_FORMAT_STRING(const char *fmt), ...)
215
+ CPL_PRINT_FUNC_FORMAT(3, 4);
216
+ #endif
217
+
218
+ /*! @cond Doxygen_Suppress */
219
+ #if defined(GDAL_COMPILATION) && !defined(DONT_DEPRECATE_SPRINTF)
220
+ int CPL_DLL CPLsprintf(char *str, CPL_FORMAT_STRING(const char *fmt), ...)
221
+ CPL_PRINT_FUNC_FORMAT(2, 3) CPL_WARN_DEPRECATED("Use CPLsnprintf instead");
222
+ #else
223
+ int CPL_DLL CPLsprintf(char *str, CPL_FORMAT_STRING(const char *fmt), ...)
224
+ CPL_PRINT_FUNC_FORMAT(2, 3);
225
+ #endif
226
+ /*! @endcond */
227
+ int CPL_DLL CPLprintf(CPL_FORMAT_STRING(const char *fmt), ...)
228
+ CPL_PRINT_FUNC_FORMAT(1, 2);
229
+
230
+ /* For some reason Doxygen_Suppress is needed to avoid warning. Not sure why */
231
+ /*! @cond Doxygen_Suppress */
232
+ /* caution: only works with limited number of formats */
233
+ int CPL_DLL CPLsscanf(const char *str, CPL_SCANF_FORMAT_STRING(const char *fmt),
234
+ ...) CPL_SCAN_FUNC_FORMAT(2, 3);
235
+ /*! @endcond */
236
+
237
+ const char CPL_DLL *CPLSPrintf(CPL_FORMAT_STRING(const char *fmt), ...)
238
+ CPL_PRINT_FUNC_FORMAT(1, 2) CPL_WARN_UNUSED_RESULT;
239
+ char CPL_DLL **CSLAppendPrintf(char **papszStrList,
240
+ CPL_FORMAT_STRING(const char *fmt), ...)
241
+ CPL_PRINT_FUNC_FORMAT(2, 3) CPL_WARN_UNUSED_RESULT;
242
+ int CPL_DLL CPLVASPrintf(char **buf, CPL_FORMAT_STRING(const char *fmt),
243
+ va_list args) CPL_PRINT_FUNC_FORMAT(2, 0);
244
+
245
+ /* -------------------------------------------------------------------- */
246
+ /* RFC 23 character set conversion/recoding API (cpl_recode.cpp). */
247
+ /* -------------------------------------------------------------------- */
248
+ /** Encoding of the current locale */
249
+ #define CPL_ENC_LOCALE ""
250
+ /** UTF-8 encoding */
251
+ #define CPL_ENC_UTF8 "UTF-8"
252
+ /** UTF-16 encoding */
253
+ #define CPL_ENC_UTF16 "UTF-16"
254
+ /** UCS-2 encoding */
255
+ #define CPL_ENC_UCS2 "UCS-2"
256
+ /** UCS-4 encoding */
257
+ #define CPL_ENC_UCS4 "UCS-4"
258
+ /** ASCII encoding */
259
+ #define CPL_ENC_ASCII "ASCII"
260
+ /** ISO-8859-1 (LATIN1) encoding */
261
+ #define CPL_ENC_ISO8859_1 "ISO-8859-1"
262
+
263
+ int CPL_DLL CPLEncodingCharSize(const char *pszEncoding);
264
+ /*! @cond Doxygen_Suppress */
265
+ void CPL_DLL CPLClearRecodeWarningFlags(void);
266
+ /*! @endcond */
267
+ char CPL_DLL *CPLRecode(const char *pszSource, const char *pszSrcEncoding,
268
+ const char *pszDstEncoding)
269
+ CPL_WARN_UNUSED_RESULT CPL_RETURNS_NONNULL;
270
+ char CPL_DLL *
271
+ CPLRecodeFromWChar(const wchar_t *pwszSource, const char *pszSrcEncoding,
272
+ const char *pszDstEncoding) CPL_WARN_UNUSED_RESULT;
273
+ wchar_t CPL_DLL *
274
+ CPLRecodeToWChar(const char *pszSource, const char *pszSrcEncoding,
275
+ const char *pszDstEncoding) CPL_WARN_UNUSED_RESULT;
276
+ int CPL_DLL CPLIsUTF8(const char *pabyData, int nLen);
277
+ bool CPL_DLL CPLIsASCII(const char *pabyData, size_t nLen);
278
+ char CPL_DLL *CPLForceToASCII(const char *pabyData, int nLen,
279
+ char chReplacementChar) CPL_WARN_UNUSED_RESULT;
280
+ char CPL_DLL *CPLUTF8ForceToASCII(const char *pszStr, char chReplacementChar)
281
+ CPL_WARN_UNUSED_RESULT;
282
+ int CPL_DLL CPLStrlenUTF8(const char *pszUTF8Str)
283
+ /*! @cond Doxygen_Suppress */
284
+ CPL_WARN_DEPRECATED("Use CPLStrlenUTF8Ex() instead")
285
+ /*! @endcond */
286
+ ;
287
+ size_t CPL_DLL CPLStrlenUTF8Ex(const char *pszUTF8Str);
288
+ int CPL_DLL CPLCanRecode(const char *pszTestStr, const char *pszSrcEncoding,
289
+ const char *pszDstEncoding) CPL_WARN_UNUSED_RESULT;
290
+ CPL_C_END
291
+
292
+ #if defined(__cplusplus) && !defined(CPL_SUPRESS_CPLUSPLUS)
293
+
294
+ extern "C++"
295
+ {
296
+ std::string CPL_DLL CPLRemoveSQLComments(const std::string &osInput);
297
+ }
298
+
299
+ #endif
300
+
301
+ /************************************************************************/
302
+ /* CPLString */
303
+ /************************************************************************/
304
+
305
+ #if defined(__cplusplus) && !defined(CPL_SUPRESS_CPLUSPLUS)
306
+
307
+ extern "C++"
308
+ {
309
+ #ifndef DOXYGEN_SKIP
310
+ #include <string>
311
+ #include <vector>
312
+ #if __cplusplus >= 201703L || (defined(_MSVC_LANG) && _MSVC_LANG >= 201703L)
313
+ #include <string_view>
314
+ #endif
315
+ #endif
316
+
317
+ // VC++ implicitly applies __declspec(dllexport) to template base classes
318
+ // of classes marked with __declspec(dllexport).
319
+ // Hence, if marked with CPL_DLL, VC++ would export symbols for the
320
+ // specialization of std::basic_string<char>, since it is a base class of
321
+ // CPLString. As a result, if an application linked both gdal.dll and a static
322
+ // library that (implicitly) instantiates std::string (almost all do!), then the
323
+ // linker would emit an error concerning duplicate symbols for std::string. The
324
+ // least intrusive solution is to not mark the whole class with
325
+ // __declspec(dllexport) for VC++, but only its non-inline methods.
326
+ #ifdef _MSC_VER
327
+ #define CPLSTRING_CLASS_DLL
328
+ #define CPLSTRING_METHOD_DLL CPL_DLL
329
+ #else
330
+ /*! @cond Doxygen_Suppress */
331
+ #define CPLSTRING_CLASS_DLL CPL_DLL
332
+ #define CPLSTRING_METHOD_DLL
333
+ /*! @endcond */
334
+ #endif
335
+
336
+ //! Convenient string class based on std::string.
337
+ class CPLSTRING_CLASS_DLL CPLString : public std::string
338
+ {
339
+ public:
340
+ /** Constructor */
341
+ CPLString(void)
342
+ {
343
+ }
344
+
345
+ /** Constructor */
346
+ // cppcheck-suppress noExplicitConstructor
347
+ CPLString(const std::string &oStr) : std::string(oStr)
348
+ {
349
+ }
350
+
351
+ /** Constructor */
352
+ // cppcheck-suppress noExplicitConstructor
353
+ CPLString(const char *pszStr) : std::string(pszStr)
354
+ {
355
+ }
356
+
357
+ /** Constructor */
358
+ CPLString(const char *pszStr, size_t n) : std::string(pszStr, n)
359
+ {
360
+ }
361
+
362
+ /** Return string as zero terminated character array */
363
+ operator const char *(void) const
364
+ {
365
+ return c_str();
366
+ }
367
+
368
+ /** Return character at specified index */
369
+ char &operator[](std::string::size_type i)
370
+ {
371
+ return std::string::operator[](i);
372
+ }
373
+
374
+ /** Return character at specified index */
375
+ const char &operator[](std::string::size_type i) const
376
+ {
377
+ return std::string::operator[](i);
378
+ }
379
+
380
+ /** Return character at specified index */
381
+ char &operator[](int i)
382
+ {
383
+ return std::string::operator[](
384
+ static_cast<std::string::size_type>(i));
385
+ }
386
+
387
+ /** Return character at specified index */
388
+ const char &operator[](int i) const
389
+ {
390
+ return std::string::operator[](
391
+ static_cast<std::string::size_type>(i));
392
+ }
393
+
394
+ /** Clear the string */
395
+ void Clear()
396
+ {
397
+ resize(0);
398
+ }
399
+
400
+ /** Assign specified string and take ownership of it (assumed to be
401
+ * allocated with CPLMalloc()). NULL can be safely passed to clear the
402
+ * string. */
403
+ void Seize(char *pszValue)
404
+ {
405
+ if (pszValue == nullptr)
406
+ Clear();
407
+ else
408
+ {
409
+ *this = pszValue;
410
+ CPLFree(pszValue);
411
+ }
412
+ }
413
+
414
+ /* There seems to be a bug in the way the compiler count indices...
415
+ * Should be CPL_PRINT_FUNC_FORMAT (1, 2) */
416
+ CPLSTRING_METHOD_DLL CPLString &
417
+ Printf(CPL_FORMAT_STRING(const char *pszFormat), ...)
418
+ CPL_PRINT_FUNC_FORMAT(2, 3);
419
+ CPLSTRING_METHOD_DLL CPLString &
420
+ vPrintf(CPL_FORMAT_STRING(const char *pszFormat), va_list args)
421
+ CPL_PRINT_FUNC_FORMAT(2, 0);
422
+ CPLSTRING_METHOD_DLL CPLString &
423
+ FormatC(double dfValue, const char *pszFormat = nullptr);
424
+ CPLSTRING_METHOD_DLL CPLString &Trim();
425
+ CPLSTRING_METHOD_DLL CPLString &Recode(const char *pszSrcEncoding,
426
+ const char *pszDstEncoding);
427
+ CPLSTRING_METHOD_DLL CPLString &replaceAll(const std::string &osBefore,
428
+ const std::string &osAfter);
429
+ CPLSTRING_METHOD_DLL CPLString &replaceAll(const std::string &osBefore,
430
+ char chAfter);
431
+ CPLSTRING_METHOD_DLL CPLString &replaceAll(char chBefore,
432
+ const std::string &osAfter);
433
+ CPLSTRING_METHOD_DLL CPLString &replaceAll(char chBefore, char chAfter);
434
+
435
+ /* case insensitive find alternates */
436
+ CPLSTRING_METHOD_DLL size_t ifind(const std::string &str,
437
+ size_t pos = 0) const;
438
+ CPLSTRING_METHOD_DLL size_t ifind(const char *s, size_t pos = 0) const;
439
+ CPLSTRING_METHOD_DLL CPLString &toupper(void);
440
+ CPLSTRING_METHOD_DLL CPLString &tolower(void);
441
+
442
+ CPLSTRING_METHOD_DLL bool endsWith(const std::string &osStr) const;
443
+
444
+ CPLSTRING_METHOD_DLL CPLString URLEncode() const;
445
+
446
+ CPLSTRING_METHOD_DLL CPLString SQLQuotedIdentifier() const;
447
+
448
+ CPLSTRING_METHOD_DLL CPLString SQLQuotedLiteral() const;
449
+
450
+ private:
451
+ operator void *(void) = delete;
452
+ };
453
+
454
+ #undef CPLSTRING_CLASS_DLL
455
+ #undef CPLSTRING_METHOD_DLL
456
+
457
+ CPLString CPL_DLL CPLOPrintf(CPL_FORMAT_STRING(const char *pszFormat), ...)
458
+ CPL_PRINT_FUNC_FORMAT(1, 2);
459
+ CPLString CPL_DLL CPLOvPrintf(CPL_FORMAT_STRING(const char *pszFormat),
460
+ va_list args) CPL_PRINT_FUNC_FORMAT(1, 0);
461
+ CPLString CPL_DLL CPLQuotedSQLIdentifier(const char *pszIdent);
462
+
463
+ /* -------------------------------------------------------------------- */
464
+ /* URL processing functions, here since they depend on CPLString. */
465
+ /* -------------------------------------------------------------------- */
466
+ CPLString CPL_DLL CPLURLGetValue(const char *pszURL, const char *pszKey);
467
+ CPLString CPL_DLL CPLURLAddKVP(const char *pszURL, const char *pszKey,
468
+ const char *pszValue);
469
+
470
+ /************************************************************************/
471
+ /* CPLStringList */
472
+ /************************************************************************/
473
+
474
+ //! String list class designed around our use of C "char**" string lists.
475
+ class CPL_DLL CPLStringList
476
+ {
477
+ char **papszList = nullptr;
478
+ mutable int nCount = 0;
479
+ mutable int nAllocation = 0;
480
+ bool bOwnList = false;
481
+ bool bIsSorted = false;
482
+
483
+ bool MakeOurOwnCopy();
484
+ bool EnsureAllocation(int nMaxLength);
485
+ int FindSortedInsertionPoint(const char *pszLine);
486
+
487
+ public:
488
+ CPLStringList();
489
+ explicit CPLStringList(char **papszList, int bTakeOwnership = TRUE);
490
+ explicit CPLStringList(CSLConstList papszList);
491
+ explicit CPLStringList(const std::vector<std::string> &aosList);
492
+ explicit CPLStringList(std::initializer_list<const char *> oInitList);
493
+ CPLStringList(const CPLStringList &oOther);
494
+ CPLStringList(CPLStringList &&oOther);
495
+ ~CPLStringList();
496
+
497
+ static const CPLStringList BoundToConstList(CSLConstList papszList);
498
+
499
+ CPLStringList &Clear();
500
+
501
+ /** Clear the list */
502
+ inline void clear()
503
+ {
504
+ Clear();
505
+ }
506
+
507
+ /** Return size of list */
508
+ int size() const
509
+ {
510
+ return Count();
511
+ }
512
+
513
+ int Count() const;
514
+
515
+ /** Return whether the list is empty. */
516
+ bool empty() const
517
+ {
518
+ return Count() == 0;
519
+ }
520
+
521
+ CPLStringList &AddString(const char *pszNewString);
522
+ CPLStringList &AddString(const std::string &newString);
523
+ CPLStringList &AddStringDirectly(char *pszNewString);
524
+
525
+ /** Add a string to the list */
526
+ void push_back(const char *pszNewString)
527
+ {
528
+ AddString(pszNewString);
529
+ }
530
+
531
+ /** Add a string to the list */
532
+ void push_back(const std::string &osStr)
533
+ {
534
+ AddString(osStr.c_str());
535
+ }
536
+
537
+ #if defined(DOXYGEN_SKIP) || __cplusplus >= 201703L || \
538
+ (defined(_MSVC_LANG) && _MSVC_LANG >= 201703L)
539
+ void push_back(std::string_view svStr);
540
+ #endif
541
+
542
+ CPLStringList &InsertString(int nInsertAtLineNo, const char *pszNewLine)
543
+ {
544
+ return InsertStringDirectly(nInsertAtLineNo, CPLStrdup(pszNewLine));
545
+ }
546
+
547
+ CPLStringList &InsertStringDirectly(int nInsertAtLineNo,
548
+ char *pszNewLine);
549
+
550
+ // CPLStringList &InsertStrings( int nInsertAtLineNo, char
551
+ // **papszNewLines );
552
+
553
+ CPLStringList &RemoveStrings(int nFirstLineToDelete,
554
+ int nNumToRemove = 1);
555
+
556
+ /** Return index of pszTarget in the list, or -1 */
557
+ int FindString(const char *pszTarget) const
558
+ {
559
+ return CSLFindString(papszList, pszTarget);
560
+ }
561
+
562
+ /** Return index of pszTarget in the list (using partial search), or -1
563
+ */
564
+ int PartialFindString(const char *pszNeedle) const
565
+ {
566
+ return CSLPartialFindString(papszList, pszNeedle);
567
+ }
568
+
569
+ int FindName(const char *pszName) const;
570
+ bool FetchBool(const char *pszKey, bool bDefault) const;
571
+ // Deprecated.
572
+ int FetchBoolean(const char *pszKey, int bDefault) const;
573
+ const char *FetchNameValue(const char *pszKey) const;
574
+ const char *FetchNameValueDef(const char *pszKey,
575
+ const char *pszDefault) const;
576
+ CPLStringList &AddNameValue(const char *pszKey, const char *pszValue);
577
+ CPLStringList &SetNameValue(const char *pszKey, const char *pszValue);
578
+
579
+ CPLStringList &SetString(int pos, const char *pszString);
580
+ CPLStringList &SetString(int pos, const std::string &osString);
581
+ CPLStringList &SetStringDirectly(int pos, char *pszString);
582
+
583
+ CPLStringList &Assign(char **papszListIn, int bTakeOwnership = TRUE);
584
+
585
+ /** Assignment operator */
586
+ CPLStringList &operator=(char **papszListIn)
587
+ {
588
+ return Assign(papszListIn, TRUE);
589
+ }
590
+
591
+ /** Assignment operator */
592
+ CPLStringList &operator=(const CPLStringList &oOther);
593
+ /** Assignment operator */
594
+ CPLStringList &operator=(CSLConstList papszListIn);
595
+ /** Move assignment operator */
596
+ CPLStringList &operator=(CPLStringList &&oOther);
597
+
598
+ /** Return string at specified index */
599
+ char *operator[](int i);
600
+
601
+ /** Return string at specified index */
602
+ char *operator[](size_t i)
603
+ {
604
+ return (*this)[static_cast<int>(i)];
605
+ }
606
+
607
+ /** Return string at specified index */
608
+ const char *operator[](int i) const;
609
+
610
+ /** Return string at specified index */
611
+ const char *operator[](size_t i) const
612
+ {
613
+ return (*this)[static_cast<int>(i)];
614
+ }
615
+
616
+ /** Return value corresponding to pszKey, or nullptr */
617
+ const char *operator[](const char *pszKey) const
618
+ {
619
+ return FetchNameValue(pszKey);
620
+ }
621
+
622
+ /** Return first element */
623
+ inline const char *front() const
624
+ {
625
+ return papszList[0];
626
+ }
627
+
628
+ /** Return last element */
629
+ inline const char *back() const
630
+ {
631
+ return papszList[size() - 1];
632
+ }
633
+
634
+ /** begin() implementation */
635
+ const char *const *begin() const
636
+ {
637
+ return papszList ? &papszList[0] : nullptr;
638
+ }
639
+
640
+ /** end() implementation */
641
+ const char *const *end() const
642
+ {
643
+ return papszList ? &papszList[size()] : nullptr;
644
+ }
645
+
646
+ /** Return list. Ownership remains to the object */
647
+ char **List()
648
+ {
649
+ return papszList;
650
+ }
651
+
652
+ /** Return list. Ownership remains to the object */
653
+ CSLConstList List() const
654
+ {
655
+ return papszList;
656
+ }
657
+
658
+ char **StealList();
659
+
660
+ CPLStringList &Sort();
661
+
662
+ /** Returns whether the list is sorted */
663
+ int IsSorted() const
664
+ {
665
+ return bIsSorted;
666
+ }
667
+
668
+ /** Return lists */
669
+ operator char **(void)
670
+ {
671
+ return List();
672
+ }
673
+
674
+ /** Return lists */
675
+ operator CSLConstList(void) const
676
+ {
677
+ return List();
678
+ }
679
+
680
+ /** Return the list as a vector of strings */
681
+ operator std::vector<std::string>(void) const
682
+ {
683
+ return std::vector<std::string>{begin(), end()};
684
+ }
685
+
686
+ private:
687
+ operator void *(void) = delete;
688
+ };
689
+
690
+ #ifdef GDAL_COMPILATION
691
+
692
+ #include <iterator> // For std::input_iterator_tag
693
+ #include <memory>
694
+ #include <string_view>
695
+ #include <utility> // For std::pair
696
+
697
+ /*! @cond Doxygen_Suppress */
698
+ struct CPL_DLL CSLDestroyReleaser
699
+ {
700
+ void operator()(char **papszStr) const
701
+ {
702
+ CSLDestroy(papszStr);
703
+ }
704
+ };
705
+
706
+ /*! @endcond */
707
+
708
+ /** Unique pointer type to use with CSL functions returning a char** */
709
+ using CSLUniquePtr = std::unique_ptr<char *, CSLDestroyReleaser>;
710
+
711
+ /** Unique pointer type to use with functions returning a char* to release
712
+ * with VSIFree */
713
+ using CPLCharUniquePtr = std::unique_ptr<char, VSIFreeReleaser>;
714
+
715
+ namespace cpl
716
+ {
717
+
718
+ /*! @cond Doxygen_Suppress */
719
+
720
+ /** Equivalent of C++20 std::string::starts_with(const char*) */
721
+ template <class StringType>
722
+ inline bool starts_with(const StringType &str, const char *prefix)
723
+ {
724
+ const size_t prefixLen = strlen(prefix);
725
+ return str.size() >= prefixLen &&
726
+ str.compare(0, prefixLen, prefix, prefixLen) == 0;
727
+ }
728
+
729
+ /** Equivalent of C++20 std::string::starts_with(const std::string &) */
730
+ template <class StringType>
731
+ inline bool starts_with(const StringType &str, const std::string &prefix)
732
+ {
733
+ return str.size() >= prefix.size() &&
734
+ str.compare(0, prefix.size(), prefix) == 0;
735
+ }
736
+
737
+ /** Equivalent of C++20 std::string::starts_with(std::string_view) */
738
+ template <class StringType>
739
+ inline bool starts_with(const StringType &str, std::string_view prefix)
740
+ {
741
+ return str.size() >= prefix.size() &&
742
+ str.compare(0, prefix.size(), prefix) == 0;
743
+ }
744
+
745
+ /** Equivalent of C++20 std::string::ends_with(const char*) */
746
+ template <class StringType>
747
+ inline bool ends_with(const StringType &str, const char *suffix)
748
+ {
749
+ const size_t suffixLen = strlen(suffix);
750
+ return str.size() >= suffixLen &&
751
+ str.compare(str.size() - suffixLen, suffixLen, suffix,
752
+ suffixLen) == 0;
753
+ }
754
+
755
+ /** Equivalent of C++20 std::string::ends_with(const std::string &) */
756
+ template <class StringType>
757
+ inline bool ends_with(const StringType &str, const std::string &suffix)
758
+ {
759
+ return str.size() >= suffix.size() &&
760
+ str.compare(str.size() - suffix.size(), suffix.size(), suffix) ==
761
+ 0;
762
+ }
763
+
764
+ /** Equivalent of C++20 std::string::ends_with(std::string_view) */
765
+ template <class StringType>
766
+ inline bool ends_with(const StringType &str, std::string_view suffix)
767
+ {
768
+ return str.size() >= suffix.size() &&
769
+ str.compare(str.size() - suffix.size(), suffix.size(), suffix) ==
770
+ 0;
771
+ }
772
+
773
+ /** Iterator for a CSLConstList */
774
+ struct CPL_DLL CSLIterator
775
+ {
776
+ using iterator_category = std::input_iterator_tag;
777
+ using difference_type = std::ptrdiff_t;
778
+ using value_type = const char *;
779
+ using pointer = value_type *;
780
+ using reference = value_type &;
781
+
782
+ CSLConstList m_papszList = nullptr;
783
+ bool m_bAtEnd = false;
784
+
785
+ inline const char *operator*() const
786
+ {
787
+ return *m_papszList;
788
+ }
789
+
790
+ inline CSLIterator &operator++()
791
+ {
792
+ if (m_papszList)
793
+ ++m_papszList;
794
+ return *this;
795
+ }
796
+
797
+ bool operator==(const CSLIterator &other) const;
798
+
799
+ inline bool operator!=(const CSLIterator &other) const
800
+ {
801
+ return !(operator==(other));
802
+ }
803
+ };
804
+
805
+ /*! @endcond */
806
+
807
+ /** Wrapper for a CSLConstList that can be used with C++ iterators.
808
+ *
809
+ * @since GDAL 3.9
810
+ */
811
+ struct CPL_DLL CSLIteratorWrapper
812
+ {
813
+ public:
814
+ /** Constructor */
815
+ inline explicit CSLIteratorWrapper(CSLConstList papszList)
816
+ : m_papszList(papszList)
817
+ {
818
+ }
819
+
820
+ /** Get the begin of the list */
821
+ inline CSLIterator begin() const
822
+ {
823
+ return {m_papszList, false};
824
+ }
825
+
826
+ /** Get the end of the list */
827
+ inline CSLIterator end() const
828
+ {
829
+ return {m_papszList, true};
830
+ }
831
+
832
+ private:
833
+ CSLConstList m_papszList;
834
+ };
835
+
836
+ /** Wraps a CSLConstList in a structure that can be used with C++ iterators.
837
+ *
838
+ * @since GDAL 3.9
839
+ */
840
+ inline CSLIteratorWrapper Iterate(CSLConstList papszList)
841
+ {
842
+ return CSLIteratorWrapper{papszList};
843
+ }
844
+
845
+ /*! @cond Doxygen_Suppress */
846
+ inline CSLIteratorWrapper Iterate(const CPLStringList &aosList)
847
+ {
848
+ return Iterate(aosList.List());
849
+ }
850
+
851
+ /*! @endcond */
852
+
853
+ /*! @cond Doxygen_Suppress */
854
+ inline CSLIteratorWrapper Iterate(char **) = delete;
855
+
856
+ /*! @endcond */
857
+
858
+ /*! @cond Doxygen_Suppress */
859
+ /** Iterator for a CSLConstList as (name, value) pairs. */
860
+ struct CPL_DLL CSLNameValueIterator
861
+ {
862
+ using iterator_category = std::input_iterator_tag;
863
+ using difference_type = std::ptrdiff_t;
864
+ using value_type = std::pair<const char *, const char *>;
865
+ using pointer = value_type *;
866
+ using reference = value_type &;
867
+
868
+ CSLConstList m_papszList = nullptr;
869
+ bool m_bReturnNullKeyIfNotNameValue = false;
870
+ std::string m_osKey{};
871
+
872
+ value_type operator*();
873
+
874
+ inline CSLNameValueIterator &operator++()
875
+ {
876
+ if (m_papszList)
877
+ ++m_papszList;
878
+ return *this;
879
+ }
880
+
881
+ inline bool operator==(const CSLNameValueIterator &other) const
882
+ {
883
+ return m_papszList == other.m_papszList;
884
+ }
885
+
886
+ inline bool operator!=(const CSLNameValueIterator &other) const
887
+ {
888
+ return !(operator==(other));
889
+ }
890
+ };
891
+
892
+ /*! @endcond */
893
+
894
+ /** Wrapper for a CSLConstList that can be used with C++ iterators
895
+ * to get (name, value) pairs.
896
+ *
897
+ * This can for example be used to do the following:
898
+ * for (const auto& [name, value]: cpl::IterateNameValue(papszList)) {}
899
+ *
900
+ * Note that a (name, value) pair returned by dereferencing an iterator
901
+ * is invalidated by the next iteration on the iterator.
902
+ *
903
+ * @since GDAL 3.9
904
+ */
905
+ struct CPL_DLL CSLNameValueIteratorWrapper
906
+ {
907
+ public:
908
+ /** Constructor */
909
+ inline explicit CSLNameValueIteratorWrapper(
910
+ CSLConstList papszList, bool bReturnNullKeyIfNotNameValue)
911
+ : m_papszList(papszList),
912
+ m_bReturnNullKeyIfNotNameValue(bReturnNullKeyIfNotNameValue)
913
+ {
914
+ }
915
+
916
+ /** Get the begin of the list */
917
+ inline CSLNameValueIterator begin() const
918
+ {
919
+ return {m_papszList, m_bReturnNullKeyIfNotNameValue};
920
+ }
921
+
922
+ /** Get the end of the list */
923
+ CSLNameValueIterator end() const;
924
+
925
+ private:
926
+ CSLConstList m_papszList;
927
+ const bool m_bReturnNullKeyIfNotNameValue;
928
+ };
929
+
930
+ /** Wraps a CSLConstList in a structure that can be used with C++ iterators
931
+ * to get (name, value) pairs.
932
+ *
933
+ * This can for example be used to do the following:
934
+ * for (const auto& [name, value]: cpl::IterateNameValue(papszList)) {}
935
+ *
936
+ * Note that a (name, value) pair returned by dereferencing an iterator
937
+ * is invalidated by the next iteration on the iterator.
938
+ *
939
+ * @param papszList List to iterate over.
940
+ * @param bReturnNullKeyIfNotNameValue When this is set to true, if a string
941
+ * contained in the list if not of the form name=value, then the value of
942
+ * the iterator will be (nullptr, string).
943
+ *
944
+ * @since GDAL 3.9
945
+ */
946
+ inline CSLNameValueIteratorWrapper
947
+ IterateNameValue(CSLConstList papszList,
948
+ bool bReturnNullKeyIfNotNameValue = false)
949
+ {
950
+ return CSLNameValueIteratorWrapper{papszList,
951
+ bReturnNullKeyIfNotNameValue};
952
+ }
953
+
954
+ /*! @cond Doxygen_Suppress */
955
+ inline CSLNameValueIteratorWrapper
956
+ IterateNameValue(const CPLStringList &aosList,
957
+ bool bReturnNullKeyIfNotNameValue = false)
958
+ {
959
+ return IterateNameValue(aosList.List(), bReturnNullKeyIfNotNameValue);
960
+ }
961
+
962
+ /*! @endcond */
963
+
964
+ /*! @cond Doxygen_Suppress */
965
+ inline CSLIteratorWrapper IterateNameValue(char **, bool = false) = delete;
966
+
967
+ /*! @endcond */
968
+
969
+ /** Converts a CSLConstList to a std::vector<std::string> */
970
+ inline std::vector<std::string> ToVector(CSLConstList papszList)
971
+ {
972
+ return CPLStringList::BoundToConstList(papszList);
973
+ }
974
+
975
+ inline std::vector<std::string> ToVector(char **) = delete;
976
+
977
+ } // namespace cpl
978
+
979
+ #endif
980
+
981
+ } // extern "C++"
982
+
983
+ #endif /* def __cplusplus && !CPL_SUPRESS_CPLUSPLUS */
984
+
985
+ #endif /* CPL_STRING_H_INCLUDED */