BypassNode.js 550 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. import Node from './Node.js';
  2. class BypassNode extends Node {
  3. constructor( returnNode, callNode ) {
  4. super();
  5. this.outputNode = returnNode;
  6. this.callNode = callNode;
  7. }
  8. getNodeType( builder ) {
  9. return this.outputNode.getNodeType( builder );
  10. }
  11. generate( builder, output ) {
  12. const snippet = this.callNode.build( builder, 'void' );
  13. if ( snippet !== '' ) {
  14. builder.addFlowCode( snippet );
  15. }
  16. return this.outputNode.build( builder, output );
  17. }
  18. }
  19. BypassNode.prototype.isBypassNode = true;
  20. export default BypassNode;