[WebGPU][Kotlin] Use addins in dawn_kotlin.json - Replace the bespoke customize_api block with the generic addins mechanism from https://dawn-review.googlesource.com/c/dawn/+/332056, matching dawn_native.json. - Lets include_*/kotlin_name read attributes directly off the parsed Python objects instead of walking five parallel lookup dicts, and drops the obj/structure_name plumbing from include_method and kotlin_record_members. - exclude_members becomes per-member "omitted" addins. Among record members, "omitted" is asserted to only appear on structure members, since omitting a function/method argument would silently pass a zero-initialized value to the native call. - additional_members are now appended to struct.members (kotlin_only=True) so templates see a single member list; the converter analysis skips kotlin_only members accordingly. - Document the dawn_kotlin.json schema and addin vocabulary in docs/dawn/codegen.md. - No change to generated Kotlin/JNI output (verified by diffing the output of the kotlin generator target against origin/main, and running connectedDebugAndroidTest on device). Suggested by lokokung@ in https://dawn-review.googlesource.com/c/dawn/+/343975. Bug: 568205909, 462825233 Change-Id: I2abdc9ef4f8f5c76dd636ca1b99caaba6b4c9b3c Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/347535 Commit-Queue: Nikita Gupta <nikigupta@google.com> Reviewed-by: Loko Kung <lokokung@google.com>
Dawn is an open-source and cross-platform implementation of the WebGPU standard. More precisely it implements webgpu.h that is a one-to-one mapping with the WebGPU IDL. Dawn is meant to be integrated as part of a larger system and is the underlying implementation of WebGPU in Chromium.
Dawn provides several WebGPU building blocks:
webgpu.h version that Dawn implements.webgpu.h.Helpful links:
Developer documentation:
User documentation: (TODO, figure out what overlaps with the webgpu.h docs)
BSD 3-Clause License, please see LICENSE.
This is not an officially supported Google product.