123456789101112131415161718192021222324252627282930313233 |
- import Node, { addNodeClass } from '../core/Node.js';
- class ArrayElementNode extends Node { // @TODO: If extending from TempNode it breaks webgpu_compute
- constructor( node, indexNode ) {
- super();
- this.node = node;
- this.indexNode = indexNode;
- }
- getNodeType( builder ) {
- return this.node.getNodeType( builder );
- }
- generate( builder ) {
- const nodeSnippet = this.node.build( builder );
- const indexSnippet = this.indexNode.build( builder, 'uint' );
- return `${nodeSnippet}[ ${indexSnippet} ]`;
- }
- }
- export default ArrayElementNode;
- addNodeClass( ArrayElementNode );
|