TempNode.js 605 B

123456789101112131415161718192021222324252627282930313233343536
  1. import Node from './Node.js';
  2. class TempNode extends Node {
  3. constructor( type ) {
  4. super( type );
  5. }
  6. build( builder, output ) {
  7. const type = builder.getVectorType( this.getType( builder ) );
  8. if ( type !== 'void' ) {
  9. const nodeVar = builder.getVarFromNode( this, type );
  10. const propertyName = builder.getPropertyName( nodeVar );
  11. const snippet = super.build( builder, type );
  12. builder.addFlowCode( `${propertyName} = ${snippet}` );
  13. return builder.format( propertyName, type, output );
  14. } else {
  15. return super.build( builder, type );
  16. }
  17. }
  18. }
  19. export default TempNode;