1//* Copyright 2020 The Dawn Authors 2//* 3//* Licensed under the Apache License, Version 2.0 (the "License"); 4//* you may not use this file except in compliance with the License. 5//* You may obtain a copy of the License at 6//* 7//* http://www.apache.org/licenses/LICENSE-2.0 8//* 9//* Unless required by applicable law or agreed to in writing, software 10//* distributed under the License is distributed on an "AS IS" BASIS, 11//* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12//* See the License for the specific language governing permissions and 13//* limitations under the License. 14//* 15//* 16//* This generator is used to produce part of Emscripten's struct_info.json, 17//* which is a list of struct fields that it uses to generate field offset 18//* information for its own code generators. 19//* https://github.com/emscripten-core/emscripten/blob/master/src/struct_info.json 20//* 21 { 22 "file": "webgpu/webgpu.h", 23 "defines": [], 24 "structs": { 25 "WGPUChainedStruct": [ 26 "next", 27 "sType" 28 ], 29 {% for type in by_category["structure"] %} 30 "{{as_cType(type.name)}}": [ 31 {% if type.chained %} 32 "chain" 33 {%- elif type.extensible %} 34 "nextInChain" 35 {%- endif %} 36 {% for member in type.members -%} 37 {%- if (type.chained or type.extensible) or not loop.first -%} 38 , 39 {% endif %} 40 "{{as_varName(member.name)}}" 41 {%- endfor %} 42 43 ] 44 {%- if not loop.last -%} 45 , 46 {% endif %} 47 {% endfor %} 48 49 } 50 } 51