@shopify/react-native-skia 0.1.192 → 0.1.193

Sign up to get free protection for your applications and to get access to all the features.
Files changed (301) hide show
  1. package/android/CMakeLists.txt +1 -1
  2. package/android/build.gradle +1 -0
  3. package/android/cpp/jni/JniPlatformContext.cpp +1 -1
  4. package/cpp/api/JsiSkImage.h +25 -4
  5. package/cpp/api/JsiSkImageFactory.h +2 -2
  6. package/cpp/api/JsiSkPath.h +8 -6
  7. package/cpp/rnskia/dom/base/Declaration.h +5 -7
  8. package/cpp/rnskia/dom/nodes/JsiBlurMaskNode.h +1 -0
  9. package/cpp/rnskia/dom/nodes/JsiPathNode.h +2 -2
  10. package/cpp/rnskia/dom/props/BoxShadowProps.h +2 -0
  11. package/cpp/skia/include/android/SkAndroidFrameworkUtils.h +2 -8
  12. package/cpp/skia/include/android/SkImageAndroid.h +101 -0
  13. package/cpp/skia/include/codec/SkAndroidCodec.h +26 -8
  14. package/cpp/skia/include/codec/SkCodec.h +31 -17
  15. package/cpp/skia/include/codec/SkEncodedImageFormat.h +36 -0
  16. package/cpp/skia/include/codec/SkPixmapUtils.h +31 -0
  17. package/cpp/skia/include/config/SkUserConfig.h +61 -29
  18. package/cpp/skia/include/core/SkBitmap.h +25 -25
  19. package/cpp/skia/include/core/SkBlurTypes.h +0 -2
  20. package/cpp/skia/include/core/SkCanvas.h +32 -15
  21. package/cpp/skia/include/core/SkCapabilities.h +2 -2
  22. package/cpp/skia/include/core/SkColor.h +2 -0
  23. package/cpp/skia/include/core/SkColorPriv.h +19 -4
  24. package/cpp/skia/include/core/SkColorSpace.h +14 -17
  25. package/cpp/skia/include/core/SkColorType.h +1 -0
  26. package/cpp/skia/include/core/SkContourMeasure.h +1 -1
  27. package/cpp/skia/include/core/SkCoverageMode.h +0 -2
  28. package/cpp/skia/include/core/SkCubicMap.h +2 -0
  29. package/cpp/skia/include/core/SkData.h +5 -2
  30. package/cpp/skia/include/core/SkDataTable.h +6 -2
  31. package/cpp/skia/include/core/SkDeferredDisplayList.h +11 -10
  32. package/cpp/skia/include/core/SkDeferredDisplayListRecorder.h +9 -8
  33. package/cpp/skia/include/core/SkDrawable.h +10 -2
  34. package/cpp/skia/include/core/SkEncodedImageFormat.h +3 -30
  35. package/cpp/skia/include/core/SkFlattenable.h +4 -2
  36. package/cpp/skia/include/core/SkFont.h +1 -0
  37. package/cpp/skia/include/core/SkFontMetrics.h +1 -0
  38. package/cpp/skia/include/core/SkFontMgr.h +20 -29
  39. package/cpp/skia/include/core/SkFontStyle.h +4 -1
  40. package/cpp/skia/include/core/SkGraphics.h +21 -18
  41. package/cpp/skia/include/core/SkICC.h +3 -13
  42. package/cpp/skia/include/core/SkImage.h +395 -717
  43. package/cpp/skia/include/core/SkImageGenerator.h +19 -74
  44. package/cpp/skia/include/core/SkImageInfo.h +7 -5
  45. package/cpp/skia/include/core/SkM44.h +11 -0
  46. package/cpp/skia/include/core/SkMaskFilter.h +6 -3
  47. package/cpp/skia/include/core/SkMatrix.h +14 -4
  48. package/cpp/skia/include/core/SkMesh.h +52 -18
  49. package/cpp/skia/include/core/SkMilestone.h +1 -1
  50. package/cpp/skia/include/core/SkPaint.h +11 -34
  51. package/cpp/skia/include/core/SkPath.h +23 -4
  52. package/cpp/skia/include/core/SkPathBuilder.h +13 -5
  53. package/cpp/skia/include/core/SkPathMeasure.h +1 -1
  54. package/cpp/skia/include/core/SkPathTypes.h +0 -2
  55. package/cpp/skia/include/core/SkPathUtils.h +42 -0
  56. package/cpp/skia/include/core/SkPicture.h +3 -2
  57. package/cpp/skia/include/core/SkPictureRecorder.h +2 -0
  58. package/cpp/skia/include/core/SkPixelRef.h +4 -8
  59. package/cpp/skia/include/core/SkPixmap.h +12 -20
  60. package/cpp/skia/include/core/SkPoint.h +4 -2
  61. package/cpp/skia/include/core/SkPromiseImageTexture.h +2 -2
  62. package/cpp/skia/include/core/SkRRect.h +5 -1
  63. package/cpp/skia/include/core/SkRect.h +6 -3
  64. package/cpp/skia/include/core/SkRefCnt.h +9 -14
  65. package/cpp/skia/include/core/SkRegion.h +1 -1
  66. package/cpp/skia/include/core/SkScalar.h +2 -4
  67. package/cpp/skia/include/core/SkSerialProcs.h +18 -10
  68. package/cpp/skia/include/core/SkShader.h +1 -64
  69. package/cpp/skia/include/core/SkSize.h +2 -0
  70. package/cpp/skia/include/core/SkSpan.h +4 -112
  71. package/cpp/skia/include/core/SkStream.h +11 -12
  72. package/cpp/skia/include/core/SkString.h +9 -25
  73. package/cpp/skia/include/core/SkStrokeRec.h +1 -1
  74. package/cpp/skia/include/core/SkSurface.h +83 -61
  75. package/cpp/skia/include/core/SkSurfaceCharacterization.h +3 -3
  76. package/cpp/skia/include/core/SkSurfaceProps.h +9 -1
  77. package/cpp/skia/include/core/SkTextBlob.h +2 -2
  78. package/cpp/skia/include/core/SkTextureCompressionType.h +30 -0
  79. package/cpp/skia/include/core/SkTime.h +1 -1
  80. package/cpp/skia/include/core/SkTypeface.h +9 -2
  81. package/cpp/skia/include/core/SkTypes.h +37 -466
  82. package/cpp/skia/include/core/SkVertices.h +2 -0
  83. package/cpp/skia/include/core/SkYUVAInfo.h +4 -0
  84. package/cpp/skia/include/core/SkYUVAPixmaps.h +7 -1
  85. package/cpp/skia/include/docs/SkPDFDocument.h +12 -1
  86. package/cpp/skia/include/effects/SkColorMatrix.h +2 -1
  87. package/cpp/skia/include/effects/SkGradientShader.h +65 -14
  88. package/cpp/skia/include/effects/SkImageFilters.h +0 -11
  89. package/cpp/skia/include/effects/SkRuntimeEffect.h +41 -11
  90. package/cpp/skia/include/encode/SkEncoder.h +7 -3
  91. package/cpp/skia/include/encode/SkICC.h +36 -0
  92. package/cpp/skia/include/encode/SkJpegEncoder.h +102 -71
  93. package/cpp/skia/include/encode/SkPngEncoder.h +89 -71
  94. package/cpp/skia/include/encode/SkWebpEncoder.h +65 -38
  95. package/cpp/skia/include/gpu/GpuTypes.h +23 -1
  96. package/cpp/skia/include/gpu/GrBackendSurface.h +9 -7
  97. package/cpp/skia/include/gpu/GrContextOptions.h +28 -9
  98. package/cpp/skia/include/gpu/GrContextThreadSafeProxy.h +6 -4
  99. package/cpp/skia/include/gpu/GrDirectContext.h +84 -63
  100. package/cpp/skia/include/gpu/GrDriverBugWorkarounds.h +2 -1
  101. package/cpp/skia/include/gpu/GrRecordingContext.h +9 -5
  102. package/cpp/skia/include/gpu/GrTypes.h +18 -18
  103. package/cpp/skia/include/gpu/d3d/GrD3DTypes.h +4 -4
  104. package/cpp/skia/include/gpu/dawn/GrDawnTypes.h +3 -3
  105. package/cpp/skia/include/gpu/ganesh/GrTextureGenerator.h +77 -0
  106. package/cpp/skia/include/gpu/ganesh/SkImageGanesh.h +385 -0
  107. package/cpp/skia/include/gpu/gl/GrGLExtensions.h +3 -3
  108. package/cpp/skia/include/gpu/gl/GrGLFunctions.h +1 -1
  109. package/cpp/skia/include/gpu/gl/GrGLInterface.h +0 -3
  110. package/cpp/skia/include/gpu/gl/GrGLTypes.h +2 -1
  111. package/cpp/skia/include/gpu/graphite/BackendTexture.h +72 -3
  112. package/cpp/skia/include/gpu/graphite/Context.h +85 -32
  113. package/cpp/skia/include/gpu/graphite/ContextOptions.h +15 -11
  114. package/cpp/skia/include/gpu/graphite/GraphiteTypes.h +55 -5
  115. package/cpp/skia/include/gpu/graphite/ImageProvider.h +6 -4
  116. package/cpp/skia/include/gpu/graphite/Recorder.h +41 -11
  117. package/cpp/skia/include/gpu/graphite/Recording.h +50 -3
  118. package/cpp/skia/include/gpu/graphite/TextureInfo.h +47 -8
  119. package/cpp/skia/include/gpu/graphite/YUVABackendTextures.h +139 -0
  120. package/cpp/skia/include/gpu/graphite/dawn/DawnTypes.h +40 -0
  121. package/cpp/skia/include/gpu/graphite/dawn/DawnUtils.h +28 -0
  122. package/cpp/skia/include/gpu/graphite/mtl/MtlBackendContext.h +1 -1
  123. package/cpp/skia/include/gpu/graphite/mtl/{MtlTypes.h → MtlGraphiteTypes.h} +7 -6
  124. package/cpp/skia/include/gpu/graphite/mtl/MtlGraphiteUtils.h +27 -0
  125. package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteTypes.h +4 -9
  126. package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteUtils.h +28 -0
  127. package/cpp/skia/include/gpu/mock/GrMockTypes.h +17 -13
  128. package/cpp/skia/include/gpu/mtl/GrMtlTypes.h +2 -2
  129. package/cpp/skia/include/gpu/vk/GrVkBackendContext.h +1 -1
  130. package/cpp/skia/include/gpu/vk/GrVkTypes.h +3 -3
  131. package/cpp/skia/include/gpu/vk/VulkanExtensions.h +3 -3
  132. package/cpp/skia/include/gpu/vk/VulkanMemoryAllocator.h +5 -7
  133. package/cpp/skia/include/pathops/SkPathOps.h +3 -3
  134. package/cpp/skia/include/ports/SkFontMgr_data.h +22 -0
  135. package/cpp/skia/include/ports/SkFontMgr_indirect.h +14 -14
  136. package/cpp/skia/include/ports/SkRemotableFontMgr.h +2 -2
  137. package/cpp/skia/include/ports/SkTypeface_win.h +2 -1
  138. package/cpp/skia/include/private/SkChecksum.h +32 -7
  139. package/cpp/skia/include/private/SkColorData.h +1 -26
  140. package/cpp/skia/include/private/SkGainmapInfo.h +97 -0
  141. package/cpp/skia/include/private/SkGainmapShader.h +53 -0
  142. package/cpp/skia/include/private/SkIDChangeListener.h +4 -3
  143. package/cpp/skia/include/private/SkJpegGainmapEncoder.h +71 -0
  144. package/cpp/skia/include/private/SkJpegMetadataDecoder.h +61 -0
  145. package/cpp/skia/include/private/SkOpts_spi.h +3 -1
  146. package/cpp/skia/include/private/SkPathRef.h +64 -47
  147. package/cpp/skia/include/private/SkSLDefines.h +5 -5
  148. package/cpp/skia/include/private/SkSLSampleUsage.h +0 -4
  149. package/cpp/skia/include/private/SkSpinlock.h +1 -1
  150. package/cpp/skia/include/private/SkWeakRefCnt.h +3 -0
  151. package/cpp/skia/include/private/{SingleOwner.h → base/SingleOwner.h} +8 -5
  152. package/cpp/skia/include/private/base/SkAPI.h +52 -0
  153. package/cpp/skia/include/private/base/SkAlign.h +39 -0
  154. package/cpp/skia/include/private/base/SkAlignedStorage.h +32 -0
  155. package/cpp/skia/include/private/base/SkAssert.h +92 -0
  156. package/cpp/skia/include/private/base/SkAttributes.h +102 -0
  157. package/cpp/skia/include/private/base/SkCPUTypes.h +25 -0
  158. package/cpp/skia/include/private/base/SkContainers.h +46 -0
  159. package/cpp/skia/include/private/base/SkDebug.h +27 -0
  160. package/cpp/skia/include/private/{SkDeque.h → base/SkDeque.h} +3 -1
  161. package/cpp/skia/include/private/base/SkFeatures.h +151 -0
  162. package/cpp/skia/include/private/{SkFixed.h → base/SkFixed.h} +9 -7
  163. package/cpp/skia/include/private/{SkFloatBits.h → base/SkFloatBits.h} +2 -3
  164. package/cpp/skia/include/private/{SkFloatingPoint.h → base/SkFloatingPoint.h} +18 -9
  165. package/cpp/skia/include/private/base/SkLoadUserConfig.h +63 -0
  166. package/cpp/skia/include/private/{SkMacros.h → base/SkMacros.h} +17 -2
  167. package/cpp/skia/include/private/{SkMalloc.h → base/SkMalloc.h} +4 -7
  168. package/cpp/skia/include/{core → private/base}/SkMath.h +25 -2
  169. package/cpp/skia/include/private/{SkMutex.h → base/SkMutex.h} +5 -5
  170. package/cpp/skia/include/private/{SkNoncopyable.h → base/SkNoncopyable.h} +2 -2
  171. package/cpp/skia/include/private/{SkOnce.h → base/SkOnce.h} +3 -1
  172. package/cpp/skia/include/private/base/SkPathEnums.h +25 -0
  173. package/cpp/skia/include/private/{SkSafe32.h → base/SkSafe32.h} +16 -1
  174. package/cpp/skia/include/private/{SkSemaphore.h → base/SkSemaphore.h} +4 -3
  175. package/cpp/skia/include/private/base/SkSpan_impl.h +129 -0
  176. package/cpp/skia/include/private/base/SkTArray.h +694 -0
  177. package/cpp/skia/include/private/{SkTDArray.h → base/SkTDArray.h} +17 -54
  178. package/cpp/skia/include/private/{SkTFitsIn.h → base/SkTFitsIn.h} +14 -8
  179. package/cpp/skia/include/private/{SkTLogic.h → base/SkTLogic.h} +1 -1
  180. package/cpp/skia/include/private/{SkTemplates.h → base/SkTemplates.h} +63 -88
  181. package/cpp/skia/include/private/{SkThreadID.h → base/SkThreadID.h} +5 -2
  182. package/cpp/skia/include/private/{SkTo.h → base/SkTo.h} +13 -2
  183. package/cpp/skia/include/private/base/SkTypeTraits.h +33 -0
  184. package/cpp/skia/include/private/chromium/GrVkSecondaryCBDrawContext.h +130 -0
  185. package/cpp/skia/include/private/chromium/SkChromeRemoteGlyphCache.h +5 -9
  186. package/cpp/skia/include/private/chromium/SkDiscardableMemory.h +70 -0
  187. package/cpp/skia/include/private/chromium/Slug.h +0 -9
  188. package/cpp/skia/include/private/gpu/ganesh/GrContext_Base.h +2 -1
  189. package/cpp/skia/include/private/gpu/ganesh/GrD3DTypesMinimal.h +1 -1
  190. package/cpp/skia/include/private/gpu/ganesh/GrDawnTypesPriv.h +1 -1
  191. package/cpp/skia/include/private/gpu/ganesh/GrGLTypesPriv.h +1 -1
  192. package/cpp/skia/include/private/gpu/ganesh/GrImageContext.h +1 -1
  193. package/cpp/skia/include/private/gpu/ganesh/GrMockTypesPriv.h +3 -2
  194. package/cpp/skia/include/private/gpu/ganesh/GrMtlTypesPriv.h +1 -1
  195. package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +17 -23
  196. package/cpp/skia/include/private/gpu/ganesh/GrVkTypesPriv.h +2 -2
  197. package/cpp/skia/include/private/gpu/graphite/DawnTypesPriv.h +38 -0
  198. package/cpp/skia/include/private/gpu/graphite/{MtlTypesPriv.h → MtlGraphiteTypesPriv.h} +5 -5
  199. package/cpp/skia/include/private/gpu/graphite/VulkanGraphiteTypesPriv.h +1 -9
  200. package/cpp/skia/include/private/gpu/vk/SkiaVulkan.h +4 -0
  201. package/cpp/skia/include/utils/SkCamera.h +1 -1
  202. package/cpp/skia/include/utils/SkCustomTypeface.h +7 -1
  203. package/cpp/skia/include/utils/SkNWayCanvas.h +6 -6
  204. package/cpp/skia/include/utils/SkOrderedFontMgr.h +7 -6
  205. package/cpp/skia/include/utils/SkPaintFilterCanvas.h +2 -2
  206. package/cpp/skia/include/utils/SkParsePath.h +1 -1
  207. package/cpp/skia/modules/skcms/skcms.h +14 -0
  208. package/cpp/skia/modules/skcms/src/Transform_inl.h +19 -0
  209. package/cpp/skia/modules/skparagraph/include/FontCollection.h +2 -2
  210. package/cpp/skia/modules/skparagraph/include/Paragraph.h +72 -2
  211. package/cpp/skia/modules/skparagraph/include/ParagraphCache.h +1 -11
  212. package/cpp/skia/modules/skparagraph/include/ParagraphPainter.h +63 -0
  213. package/cpp/skia/modules/skparagraph/include/TextStyle.h +27 -4
  214. package/cpp/skia/modules/skparagraph/include/TypefaceFontProvider.h +13 -13
  215. package/cpp/skia/modules/skresources/include/SkResources.h +18 -4
  216. package/cpp/skia/modules/svg/include/SkSVGAttribute.h +1 -1
  217. package/cpp/skia/modules/svg/include/SkSVGAttributeParser.h +2 -2
  218. package/cpp/skia/modules/svg/include/SkSVGContainer.h +2 -2
  219. package/cpp/skia/modules/svg/include/SkSVGDOM.h +1 -1
  220. package/cpp/skia/modules/svg/include/SkSVGFilterContext.h +2 -2
  221. package/cpp/skia/modules/svg/include/SkSVGGradient.h +2 -2
  222. package/cpp/skia/modules/svg/include/SkSVGIDMapper.h +2 -2
  223. package/cpp/skia/modules/svg/include/SkSVGRenderContext.h +3 -3
  224. package/cpp/skia/modules/svg/include/SkSVGSVG.h +1 -1
  225. package/cpp/skia/modules/svg/include/SkSVGTypes.h +22 -21
  226. package/cpp/skia/modules/svg/include/SkSVGValue.h +1 -1
  227. package/cpp/skia/{include/private → src/core}/SkTHash.h +41 -37
  228. package/ios/RNSkia-iOS/ViewScreenshotService.mm +1 -1
  229. package/libs/android/arm64-v8a/libskia.a +0 -0
  230. package/libs/android/arm64-v8a/libskottie.a +0 -0
  231. package/libs/android/arm64-v8a/libsksg.a +0 -0
  232. package/libs/android/arm64-v8a/libskshaper.a +0 -0
  233. package/libs/android/arm64-v8a/libsvg.a +0 -0
  234. package/libs/android/armeabi-v7a/libskia.a +0 -0
  235. package/libs/android/armeabi-v7a/libskottie.a +0 -0
  236. package/libs/android/armeabi-v7a/libsksg.a +0 -0
  237. package/libs/android/armeabi-v7a/libskshaper.a +0 -0
  238. package/libs/android/armeabi-v7a/libsvg.a +0 -0
  239. package/libs/android/x86/libskia.a +0 -0
  240. package/libs/android/x86/libskottie.a +0 -0
  241. package/libs/android/x86/libsksg.a +0 -0
  242. package/libs/android/x86/libskshaper.a +0 -0
  243. package/libs/android/x86/libsvg.a +0 -0
  244. package/libs/android/x86_64/libskia.a +0 -0
  245. package/libs/android/x86_64/libskottie.a +0 -0
  246. package/libs/android/x86_64/libsksg.a +0 -0
  247. package/libs/android/x86_64/libskshaper.a +0 -0
  248. package/libs/android/x86_64/libsvg.a +0 -0
  249. package/libs/ios/libskia.xcframework/Info.plist +5 -5
  250. package/libs/ios/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
  251. package/libs/ios/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
  252. package/libs/ios/libskottie.xcframework/ios-arm64_arm64e/libskottie.a +0 -0
  253. package/libs/ios/libskottie.xcframework/ios-arm64_arm64e_x86_64-simulator/libskottie.a +0 -0
  254. package/libs/ios/libsksg.xcframework/ios-arm64_arm64e/libsksg.a +0 -0
  255. package/libs/ios/libsksg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsksg.a +0 -0
  256. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
  257. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
  258. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
  259. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
  260. package/package.json +1 -1
  261. package/react-native-skia.podspec +1 -1
  262. package/scripts/install-npm.js +11 -1
  263. package/cpp/skia/include/core/SkImageEncoder.h +0 -71
  264. package/cpp/skia/include/gpu/GrConfig.h +0 -53
  265. package/cpp/skia/include/gpu/graphite/CombinationBuilder.h +0 -195
  266. package/cpp/skia/include/private/SkHalf.h +0 -38
  267. package/cpp/skia/include/private/SkImageInfoPriv.h +0 -199
  268. package/cpp/skia/include/private/SkSLIRNode.h +0 -64
  269. package/cpp/skia/include/private/SkSLLayout.h +0 -144
  270. package/cpp/skia/include/private/SkSLModifiers.h +0 -178
  271. package/cpp/skia/include/private/SkSLProgramElement.h +0 -77
  272. package/cpp/skia/include/private/SkSLProgramKind.h +0 -35
  273. package/cpp/skia/include/private/SkSLStatement.h +0 -86
  274. package/cpp/skia/include/private/SkSLString.h +0 -41
  275. package/cpp/skia/include/private/SkSLSymbol.h +0 -94
  276. package/cpp/skia/include/private/SkSafe_math.h +0 -52
  277. package/cpp/skia/include/private/SkStringView.h +0 -51
  278. package/cpp/skia/include/private/SkTArray.h +0 -655
  279. package/cpp/skia/include/private/SkUniquePaintParamsID.h +0 -35
  280. package/cpp/skia/include/private/SkVx.h +0 -1026
  281. package/cpp/skia/include/sksl/DSL.h +0 -37
  282. package/cpp/skia/include/sksl/DSLBlock.h +0 -58
  283. package/cpp/skia/include/sksl/DSLCase.h +0 -62
  284. package/cpp/skia/include/sksl/DSLCore.h +0 -492
  285. package/cpp/skia/include/sksl/DSLExpression.h +0 -241
  286. package/cpp/skia/include/sksl/DSLFunction.h +0 -113
  287. package/cpp/skia/include/sksl/DSLLayout.h +0 -92
  288. package/cpp/skia/include/sksl/DSLModifiers.h +0 -69
  289. package/cpp/skia/include/sksl/DSLStatement.h +0 -82
  290. package/cpp/skia/include/sksl/DSLSymbols.h +0 -61
  291. package/cpp/skia/include/sksl/DSLType.h +0 -271
  292. package/cpp/skia/include/sksl/DSLVar.h +0 -231
  293. package/cpp/skia/include/sksl/SkSLErrorReporter.h +0 -65
  294. package/cpp/skia/include/sksl/SkSLOperator.h +0 -154
  295. package/cpp/skia/include/sksl/SkSLPosition.h +0 -104
  296. package/cpp/skia/include/utils/SkRandom.h +0 -169
  297. package/cpp/skia/src/core/SkLRUCache.h +0 -126
  298. package/cpp/skia/src/core/SkTInternalLList.h +0 -302
  299. /package/cpp/skia/include/{core → codec}/SkPngChunkReader.h +0 -0
  300. /package/cpp/skia/include/private/{SkTPin.h → base/SkTPin.h} +0 -0
  301. /package/cpp/skia/include/private/{SkThreadAnnotations.h → base/SkThreadAnnotations.h} +0 -0
@@ -9,11 +9,21 @@
9
9
  #define SkPixmap_DEFINED
10
10
 
11
11
  #include "include/core/SkColor.h"
12
+ #include "include/core/SkColorType.h"
12
13
  #include "include/core/SkImageInfo.h"
14
+ #include "include/core/SkRect.h"
15
+ #include "include/core/SkRefCnt.h"
13
16
  #include "include/core/SkSamplingOptions.h"
17
+ #include "include/core/SkSize.h"
18
+ #include "include/private/base/SkAPI.h"
19
+ #include "include/private/base/SkAssert.h"
20
+ #include "include/private/base/SkAttributes.h"
21
+
22
+ #include <cstddef>
23
+ #include <cstdint>
14
24
 
15
25
  class SkColorSpace;
16
- class SkData;
26
+ enum SkAlphaType : int;
17
27
  struct SkMask;
18
28
 
19
29
  /** \class SkPixmap
@@ -702,39 +712,21 @@ public:
702
712
  */
703
713
  bool erase(SkColor color) const { return this->erase(color, this->bounds()); }
704
714
 
705
- /** Writes color to pixels bounded by subset; returns true on success.
706
- if subset is nullptr, writes colors pixels inside bounds(). Returns false if
707
- colorType() is kUnknown_SkColorType, if subset is not nullptr and does
708
- not intersect bounds(), or if subset is nullptr and bounds() is empty.
709
-
710
- @param color sRGB unpremultiplied color to write
711
- @param subset bounding integer SkRect of pixels to write; may be nullptr
712
- @return true if pixels are changed
713
-
714
- example: https://fiddle.skia.org/c/@Pixmap_erase_3
715
- */
716
- bool erase(const SkColor4f& color, const SkIRect* subset = nullptr) const {
717
- return this->erase(color, nullptr, subset);
718
- }
719
-
720
715
  /** Writes color to pixels bounded by subset; returns true on success.
721
716
  if subset is nullptr, writes colors pixels inside bounds(). Returns false if
722
717
  colorType() is kUnknown_SkColorType, if subset is not nullptr and does
723
718
  not intersect bounds(), or if subset is nullptr and bounds() is empty.
724
719
 
725
720
  @param color unpremultiplied color to write
726
- @param cs SkColorSpace of color
727
721
  @param subset bounding integer SkRect of pixels to write; may be nullptr
728
722
  @return true if pixels are changed
729
723
  */
730
- bool erase(const SkColor4f& color, SkColorSpace* cs, const SkIRect* subset = nullptr) const;
724
+ bool erase(const SkColor4f& color, const SkIRect* subset = nullptr) const;
731
725
 
732
726
  private:
733
727
  const void* fPixels;
734
728
  size_t fRowBytes;
735
729
  SkImageInfo fInfo;
736
-
737
- friend class SkPixmapPriv;
738
730
  };
739
731
 
740
732
  #endif
@@ -8,9 +8,11 @@
8
8
  #ifndef SkPoint_DEFINED
9
9
  #define SkPoint_DEFINED
10
10
 
11
- #include "include/core/SkMath.h"
12
11
  #include "include/core/SkScalar.h"
13
- #include "include/private/SkSafe32.h"
12
+ #include "include/core/SkTypes.h"
13
+ #include "include/private/base/SkSafe32.h"
14
+
15
+ #include <cstdint>
14
16
 
15
17
  struct SkIPoint;
16
18
 
@@ -10,7 +10,7 @@
10
10
 
11
11
  #include "include/core/SkTypes.h"
12
12
 
13
- #if SK_SUPPORT_GPU
13
+ #if defined(SK_GANESH)
14
14
  #include "include/core/SkRefCnt.h"
15
15
  #include "include/gpu/GrBackendSurface.h"
16
16
  /**
@@ -41,6 +41,6 @@ private:
41
41
 
42
42
  GrBackendTexture fBackendTexture;
43
43
  };
44
- #endif // SK_SUPPORT_GPU
44
+ #endif // defined(SK_GANESH)
45
45
 
46
46
  #endif // SkPromiseImageTexture_DEFINED
@@ -10,8 +10,12 @@
10
10
 
11
11
  #include "include/core/SkPoint.h"
12
12
  #include "include/core/SkRect.h"
13
+ #include "include/core/SkScalar.h"
14
+ #include "include/core/SkTypes.h"
15
+
16
+ #include <cstdint>
17
+ #include <cstring>
13
18
 
14
- class SkPath;
15
19
  class SkMatrix;
16
20
  class SkString;
17
21
 
@@ -9,12 +9,15 @@
9
9
  #define SkRect_DEFINED
10
10
 
11
11
  #include "include/core/SkPoint.h"
12
+ #include "include/core/SkScalar.h"
12
13
  #include "include/core/SkSize.h"
13
- #include "include/private/SkSafe32.h"
14
- #include "include/private/SkTFitsIn.h"
14
+ #include "include/core/SkTypes.h"
15
+ #include "include/private/base/SkSafe32.h"
16
+ #include "include/private/base/SkTFitsIn.h"
15
17
 
18
+ #include <string>
16
19
  #include <algorithm>
17
- #include <utility>
20
+ #include <cstdint>
18
21
 
19
22
  struct SkRect;
20
23
 
@@ -9,14 +9,14 @@
9
9
  #define SkRefCnt_DEFINED
10
10
 
11
11
  #include "include/core/SkTypes.h"
12
- #include "include/private/SkTemplates.h"
12
+ #include "include/private/base/SkDebug.h"
13
13
 
14
- #include <atomic> // std::atomic, std::memory_order_*
15
- #include <cstddef> // std::nullptr_t
16
- #include <iosfwd> // std::basic_ostream
17
- #include <memory> // TODO: unused
18
- #include <type_traits> // std::enable_if, std::is_convertible
19
- #include <utility> // std::forward, std::swap
14
+ #include <atomic>
15
+ #include <cstddef>
16
+ #include <cstdint>
17
+ #include <iosfwd>
18
+ #include <type_traits>
19
+ #include <utility>
20
20
 
21
21
  /** \class SkRefCntBase
22
22
 
@@ -174,7 +174,7 @@ public:
174
174
 
175
175
  bool unique() const { return 1 == fRefCnt.load(std::memory_order_acquire); }
176
176
  void ref() const { (void)fRefCnt.fetch_add(+1, std::memory_order_relaxed); }
177
- void unref() const {
177
+ void unref() const {
178
178
  if (1 == fRefCnt.fetch_add(-1, std::memory_order_acq_rel)) {
179
179
  // restore the 1 for our destructor's assert
180
180
  SkDEBUGCODE(fRefCnt.store(1, std::memory_order_relaxed));
@@ -217,12 +217,7 @@ private:
217
217
  * may be considered as trivially relocatable by the compiler so that destroying-move operations
218
218
  * i.e. move constructor followed by destructor can be optimized to memcpy.
219
219
  */
220
- #if defined(__clang__) && defined(__has_cpp_attribute) && __has_cpp_attribute(clang::trivial_abi)
221
- #define SK_SP_TRIVIAL_ABI [[clang::trivial_abi]]
222
- #else
223
- #define SK_SP_TRIVIAL_ABI
224
- #endif
225
- template <typename T> class SK_SP_TRIVIAL_ABI sk_sp {
220
+ template <typename T> class SK_TRIVIAL_ABI sk_sp {
226
221
  public:
227
222
  using element_type = T;
228
223
 
@@ -9,7 +9,7 @@
9
9
  #define SkRegion_DEFINED
10
10
 
11
11
  #include "include/core/SkRect.h"
12
- #include "include/private/SkTemplates.h"
12
+ #include "include/private/base/SkTypeTraits.h"
13
13
 
14
14
  class SkPath;
15
15
  class SkRgnBuilder;
@@ -8,10 +8,8 @@
8
8
  #ifndef SkScalar_DEFINED
9
9
  #define SkScalar_DEFINED
10
10
 
11
- #include "include/private/SkFloatingPoint.h"
12
-
13
- #undef SK_SCALAR_IS_FLOAT
14
- #define SK_SCALAR_IS_FLOAT 1
11
+ #include "include/private/base/SkAssert.h"
12
+ #include "include/private/base/SkFloatingPoint.h"
15
13
 
16
14
  typedef float SkScalar;
17
15
 
@@ -8,9 +8,15 @@
8
8
  #ifndef SkSerialProcs_DEFINED
9
9
  #define SkSerialProcs_DEFINED
10
10
 
11
- #include "include/core/SkImage.h"
12
- #include "include/core/SkPicture.h"
13
- #include "include/core/SkTypeface.h"
11
+ #include "include/core/SkRefCnt.h"
12
+ #include "include/private/base/SkAPI.h"
13
+
14
+ #include <cstddef>
15
+
16
+ class SkData;
17
+ class SkImage;
18
+ class SkPicture;
19
+ class SkTypeface;
14
20
 
15
21
  /**
16
22
  * A serial-proc is asked to serialize the specified object (e.g. picture or image).
@@ -22,30 +28,32 @@
22
28
  * The default action for typefaces is to use Skia's internal format.
23
29
  */
24
30
 
25
- typedef sk_sp<SkData> (*SkSerialPictureProc)(SkPicture*, void* ctx);
26
- typedef sk_sp<SkData> (*SkSerialImageProc)(SkImage*, void* ctx);
27
- typedef sk_sp<SkData> (*SkSerialTypefaceProc)(SkTypeface*, void* ctx);
31
+ using SkSerialPictureProc = sk_sp<SkData> (*)(SkPicture*, void* ctx);
32
+ using SkSerialImageProc = sk_sp<SkData> (*)(SkImage*, void* ctx);
33
+ using SkSerialTypefaceProc = sk_sp<SkData> (*)(SkTypeface*, void* ctx);
28
34
 
29
35
  /**
30
36
  * Called with the encoded form of a picture (previously written with a custom
31
37
  * SkSerialPictureProc proc). Return a picture object, or nullptr indicating failure.
32
38
  */
33
- typedef sk_sp<SkPicture> (*SkDeserialPictureProc)(const void* data, size_t length, void* ctx);
39
+ using SkDeserialPictureProc = sk_sp<SkPicture> (*)(const void* data, size_t length, void* ctx);
34
40
 
35
41
  /**
36
- * Called with the encoded from of an image. The proc can return an image object, or if it
42
+ * Called with the encoded form of an image. The proc can return an image object, or if it
37
43
  * returns nullptr, then Skia will take its default action to try to create an image from the data.
38
44
  *
45
+ * This will also be used to decode the internal mipmap layers that are saved on some images.
46
+ *
39
47
  * Note that unlike SkDeserialPictureProc and SkDeserialTypefaceProc, return nullptr from this
40
48
  * does not indicate failure, but is a signal for Skia to take its default action.
41
49
  */
42
- typedef sk_sp<SkImage> (*SkDeserialImageProc)(const void* data, size_t length, void* ctx);
50
+ using SkDeserialImageProc = sk_sp<SkImage> (*)(const void* data, size_t length, void* ctx);
43
51
 
44
52
  /**
45
53
  * Called with the encoded form of a typeface (previously written with a custom
46
54
  * SkSerialTypefaceProc proc). Return a typeface object, or nullptr indicating failure.
47
55
  */
48
- typedef sk_sp<SkTypeface> (*SkDeserialTypefaceProc)(const void* data, size_t length, void* ctx);
56
+ using SkDeserialTypefaceProc = sk_sp<SkTypeface> (*)(const void* data, size_t length, void* ctx);
49
57
 
50
58
  struct SK_API SkSerialProcs {
51
59
  SkSerialPictureProc fPictureProc = nullptr;
@@ -56,69 +56,6 @@ public:
56
56
  return this->isAImage(nullptr, (SkTileMode*)nullptr) != nullptr;
57
57
  }
58
58
 
59
- // TODO(skbug.com/8941): Have Android use SkAndroidFrameworkUtils, move types to SkShaderBase,
60
- // and delete asAGradient().
61
- #ifndef SK_BUILD_FOR_ANDROID_FRAMEWORK
62
- private:
63
- #endif
64
-
65
- /**
66
- * If the shader subclass can be represented as a gradient, asAGradient
67
- * returns the matching GradientType enum (or kNone_GradientType if it
68
- * cannot). Also, if info is not null, asAGradient populates info with
69
- * the relevant (see below) parameters for the gradient. fColorCount
70
- * is both an input and output parameter. On input, it indicates how
71
- * many entries in fColors and fColorOffsets can be used, if they are
72
- * non-NULL. After asAGradient has run, fColorCount indicates how
73
- * many color-offset pairs there are in the gradient. If there is
74
- * insufficient space to store all of the color-offset pairs, fColors
75
- * and fColorOffsets will not be altered. fColorOffsets specifies
76
- * where on the range of 0 to 1 to transition to the given color.
77
- * The meaning of fPoint and fRadius is dependant on the type of gradient.
78
- *
79
- * None:
80
- * info is ignored.
81
- * Color:
82
- * fColorOffsets[0] is meaningless.
83
- * Linear:
84
- * fPoint[0] and fPoint[1] are the end-points of the gradient
85
- * Radial:
86
- * fPoint[0] and fRadius[0] are the center and radius
87
- * Conical:
88
- * fPoint[0] and fRadius[0] are the center and radius of the 1st circle
89
- * fPoint[1] and fRadius[1] are the center and radius of the 2nd circle
90
- * Sweep:
91
- * fPoint[0] is the center of the sweep.
92
- */
93
-
94
- enum GradientType {
95
- kNone_GradientType,
96
- kColor_GradientType,
97
- kLinear_GradientType,
98
- kRadial_GradientType,
99
- kSweep_GradientType,
100
- kConical_GradientType,
101
- };
102
-
103
- struct GradientInfo {
104
- int fColorCount = 0; //!< In-out parameter, specifies passed size
105
- // of fColors/fColorOffsets on input, and
106
- // actual number of colors/offsets on
107
- // output.
108
- SkColor* fColors = nullptr; //!< The colors in the gradient.
109
- SkScalar* fColorOffsets = nullptr; //!< The unit offset for color transitions.
110
- SkPoint fPoint[2]; //!< Type specific, see above.
111
- SkScalar fRadius[2]; //!< Type specific, see above.
112
- SkTileMode fTileMode;
113
- uint32_t fGradientFlags = 0; //!< see SkGradientShader::Flags
114
- };
115
-
116
- GradientType asAGradient(GradientInfo* info) const;
117
-
118
- #ifndef SK_BUILD_FOR_ANDROID_FRAMEWORK
119
- public:
120
- #endif
121
-
122
59
  //////////////////////////////////////////////////////////////////////////
123
60
  // Methods to create combinations or variants of shaders
124
61
 
@@ -148,7 +85,7 @@ public:
148
85
  static sk_sp<SkShader> Color(const SkColor4f&, sk_sp<SkColorSpace>);
149
86
  static sk_sp<SkShader> Blend(SkBlendMode mode, sk_sp<SkShader> dst, sk_sp<SkShader> src);
150
87
  static sk_sp<SkShader> Blend(sk_sp<SkBlender>, sk_sp<SkShader> dst, sk_sp<SkShader> src);
151
-
88
+ static sk_sp<SkShader> CoordClamp(sk_sp<SkShader>, const SkRect& subset);
152
89
  private:
153
90
  SkShaders() = delete;
154
91
  };
@@ -10,6 +10,8 @@
10
10
 
11
11
  #include "include/core/SkScalar.h"
12
12
 
13
+ #include <cstdint>
14
+
13
15
  struct SkISize {
14
16
  int32_t fWidth;
15
17
  int32_t fHeight;
@@ -5,117 +5,9 @@
5
5
  * found in the LICENSE file.
6
6
  */
7
7
 
8
- #ifndef SkSpan_DEFINED
9
- #define SkSpan_DEFINED
8
+ // We want SkSpan to be a public API, but it is also fundamental to many of our internal types.
9
+ // Thus, we have a public file that clients can include. This file defers to the private copy
10
+ // so we do not have a dependency cycle from our "base" files to our "core" files.
10
11
 
11
- #include <cstddef>
12
- #include <initializer_list>
13
- #include <iterator>
14
- #include <type_traits>
15
- #include <utility>
16
- #include "include/private/SkTLogic.h"
12
+ #include "include/private/base/SkSpan_impl.h" // IWYU pragma: export
17
13
 
18
- // Add macro to check the lifetime of initializer_list arguments. initializer_list has a very
19
- // short life span, and can only be used as a parameter, and not as a variable.
20
- #if defined(__clang__) && defined(__has_cpp_attribute) && __has_cpp_attribute(clang::lifetimebound)
21
- #define SK_CHECK_IL_LIFETIME [[clang::lifetimebound]]
22
- #else
23
- #define SK_CHECK_IL_LIFETIME
24
- #endif
25
-
26
- /**
27
- * SkSpan holds a reference to contiguous data of type T along with a count. SkSpan does not own
28
- * the data itself but is merely a reference, therefore you must take care with the lifetime of
29
- * the underlying data.
30
- *
31
- * SkSpan is a count and a pointer into existing array or data type that stores its data in
32
- * contiguous memory like std::vector. Any container that works with std::size() and std::data()
33
- * can be used.
34
- *
35
- * SkSpan makes a convenient parameter for a routine to accept array like things. This allows you to
36
- * write the routine without overloads for all different container types.
37
- *
38
- * Example:
39
- * void routine(SkSpan<const int> a) { ... }
40
- *
41
- * std::vector v = {1, 2, 3, 4, 5};
42
- *
43
- * routine(a);
44
- *
45
- * A word of caution when working with initializer_list, initializer_lists have a lifetime that is
46
- * limited to the current statement. The following is correct and safe:
47
- *
48
- * Example:
49
- * routine({1,2,3,4,5});
50
- *
51
- * The following is undefined, and will result in erratic execution:
52
- *
53
- * Bad Example:
54
- * initializer_list l = {1, 2, 3, 4, 5}; // The data behind l dies at the ;.
55
- * routine(l);
56
- */
57
- template <typename T>
58
- class SkSpan {
59
- public:
60
- constexpr SkSpan() : fPtr{nullptr}, fSize{0} {}
61
- constexpr SkSpan(T* ptr, size_t size) : fPtr{ptr}, fSize{size} {
62
- SkASSERT(ptr || size == 0); // disallow nullptr + a nonzero size
63
- SkASSERT(size < kMaxSize);
64
- }
65
- template <typename U, typename = typename std::enable_if<std::is_same<const U, T>::value>::type>
66
- constexpr SkSpan(const SkSpan<U>& that) : fPtr(std::data(that)), fSize{std::size(that)} {}
67
- constexpr SkSpan(const SkSpan& o) = default;
68
- template<size_t N> constexpr SkSpan(T(&a)[N]) : SkSpan(a, N) { }
69
- template<typename Container>
70
- constexpr SkSpan(Container& c) : SkSpan{std::data(c), std::size(c)} { }
71
- SkSpan(std::initializer_list<T> il SK_CHECK_IL_LIFETIME)
72
- : SkSpan(std::data(il), std::size(il)) {}
73
-
74
- constexpr SkSpan& operator=(const SkSpan& that) = default;
75
-
76
- constexpr T& operator [] (size_t i) const {
77
- SkASSERT(i < this->size());
78
- return fPtr[i];
79
- }
80
- constexpr T& front() const { return fPtr[0]; }
81
- constexpr T& back() const { return fPtr[fSize - 1]; }
82
- constexpr T* begin() const { return fPtr; }
83
- constexpr T* end() const { return fPtr + fSize; }
84
- constexpr auto rbegin() const { return std::make_reverse_iterator(this->end()); }
85
- constexpr auto rend() const { return std::make_reverse_iterator(this->begin()); }
86
- constexpr T* data() const { return this->begin(); }
87
- constexpr size_t size() const { return fSize; }
88
- constexpr bool empty() const { return fSize == 0; }
89
- constexpr size_t size_bytes() const { return fSize * sizeof(T); }
90
- constexpr SkSpan<T> first(size_t prefixLen) const {
91
- SkASSERT(prefixLen <= this->size());
92
- return SkSpan{fPtr, prefixLen};
93
- }
94
- constexpr SkSpan<T> last(size_t postfixLen) const {
95
- SkASSERT(postfixLen <= this->size());
96
- return SkSpan{fPtr + (this->size() - postfixLen), postfixLen};
97
- }
98
- constexpr SkSpan<T> subspan(size_t offset) const {
99
- return this->subspan(offset, this->size() - offset);
100
- }
101
- constexpr SkSpan<T> subspan(size_t offset, size_t count) const {
102
- SkASSERT(offset <= this->size());
103
- SkASSERT(count <= this->size() - offset);
104
- return SkSpan{fPtr + offset, count};
105
- }
106
-
107
- private:
108
- static const constexpr size_t kMaxSize = std::numeric_limits<size_t>::max() / sizeof(T);
109
- T* fPtr;
110
- size_t fSize;
111
- };
112
-
113
- template <typename Container>
114
- SkSpan(Container&) ->
115
- SkSpan<std::remove_pointer_t<decltype(std::data(std::declval<Container&>()))>>;
116
-
117
- template <typename T>
118
- SkSpan(std::initializer_list<T>) ->
119
- SkSpan<std::remove_pointer_t<decltype(std::data(std::declval<std::initializer_list<T>>()))>>;
120
-
121
- #endif // SkSpan_DEFINED
@@ -11,15 +11,16 @@
11
11
  #include "include/core/SkData.h"
12
12
  #include "include/core/SkRefCnt.h"
13
13
  #include "include/core/SkScalar.h"
14
- #include "include/private/SkTo.h"
15
-
16
- #include <memory.h>
17
-
18
- class SkStream;
19
- class SkStreamRewindable;
20
- class SkStreamSeekable;
14
+ #include "include/core/SkTypes.h"
15
+ #include "include/private/base/SkCPUTypes.h"
16
+ #include "include/private/base/SkTo.h"
17
+
18
+ #include <cstdint>
19
+ #include <cstdio>
20
+ #include <cstring>
21
+ #include <memory>
22
+ #include <utility>
21
23
  class SkStreamAsset;
22
- class SkStreamMemory;
23
24
 
24
25
  /**
25
26
  * SkStream -- abstraction for a source of bytes. Subclasses can be backed by
@@ -255,10 +256,10 @@ public:
255
256
 
256
257
  bool writeText(const char text[]) {
257
258
  SkASSERT(text);
258
- return this->write(text, strlen(text));
259
+ return this->write(text, std::strlen(text));
259
260
  }
260
261
 
261
- bool newline() { return this->write("\n", strlen("\n")); }
262
+ bool newline() { return this->write("\n", std::strlen("\n")); }
262
263
 
263
264
  bool writeDecAsText(int32_t);
264
265
  bool writeBigDecAsText(int64_t, int minDigits = 0);
@@ -296,8 +297,6 @@ private:
296
297
 
297
298
  ////////////////////////////////////////////////////////////////////////////////////////
298
299
 
299
- #include <stdio.h>
300
-
301
300
  /** A stream that wraps a C FILE* file stream. */
302
301
  class SK_API SkFILEStream : public SkStreamAsset {
303
302
  public:
@@ -11,15 +11,16 @@
11
11
  #include "include/core/SkRefCnt.h"
12
12
  #include "include/core/SkScalar.h"
13
13
  #include "include/core/SkTypes.h"
14
- #include "include/private/SkMalloc.h"
15
- #include "include/private/SkTArray.h"
16
- #include "include/private/SkTo.h"
14
+ #include "include/private/base/SkTo.h"
15
+ #include "include/private/base/SkTypeTraits.h"
17
16
 
18
- #include <stdarg.h>
19
- #include <string.h>
20
17
  #include <atomic>
18
+ #include <cstdarg>
19
+ #include <cstddef>
20
+ #include <cstdint>
21
21
  #include <string>
22
22
  #include <string_view>
23
+ #include <type_traits>
23
24
 
24
25
  /* Some helper functions for C strings */
25
26
  static inline bool SkStrStartsWith(const char string[], const char prefixStr[]) {
@@ -128,6 +129,7 @@ public:
128
129
 
129
130
  bool isEmpty() const { return 0 == fRec->fLength; }
130
131
  size_t size() const { return (size_t) fRec->fLength; }
132
+ const char* data() const { return fRec->data(); }
131
133
  const char* c_str() const { return fRec->data(); }
132
134
  char operator[](size_t n) const { return this->c_str()[n]; }
133
135
 
@@ -173,8 +175,8 @@ public:
173
175
  SkString& operator=(SkString&&);
174
176
  SkString& operator=(const char text[]);
175
177
 
176
- char* writable_str();
177
- char& operator[](size_t n) { return this->writable_str()[n]; }
178
+ char* data();
179
+ char& operator[](size_t n) { return this->data()[n]; }
178
180
 
179
181
  void reset();
180
182
  /** String contents are preserved on resize. (For destructive resize, `set(nullptr, length)`.)
@@ -286,22 +288,4 @@ static inline void swap(SkString& a, SkString& b) {
286
288
  a.swap(b);
287
289
  }
288
290
 
289
- enum SkStrSplitMode {
290
- // Strictly return all results. If the input is ",," and the separator is ',' this will return
291
- // an array of three empty strings.
292
- kStrict_SkStrSplitMode,
293
-
294
- // Only nonempty results will be added to the results. Multiple separators will be
295
- // coalesced. Separators at the beginning and end of the input will be ignored. If the input is
296
- // ",," and the separator is ',', this will return an empty vector.
297
- kCoalesce_SkStrSplitMode
298
- };
299
-
300
- // Split str on any characters in delimiters into out. (Think, strtok with a sane API.)
301
- void SkStrSplit(const char* str, const char* delimiters, SkStrSplitMode splitMode,
302
- SkTArray<SkString>* out);
303
- inline void SkStrSplit(const char* str, const char* delimiters, SkTArray<SkString>* out) {
304
- SkStrSplit(str, delimiters, kCoalesce_SkStrSplitMode, out);
305
- }
306
-
307
291
  #endif
@@ -9,7 +9,7 @@
9
9
  #define SkStrokeRec_DEFINED
10
10
 
11
11
  #include "include/core/SkPaint.h"
12
- #include "include/private/SkMacros.h"
12
+ #include "include/private/base/SkMacros.h"
13
13
 
14
14
  class SkPath;
15
15