Skip to content

⬅️ Back to Table of Contents

📄 BypassNode.js

📊 Analysis Summary

Metric Count
🔧 Functions 2
🧱 Classes 1
📦 Imports 3

📚 Table of Contents

🛠️ File Location:

📂 src/nodes/core/BypassNode.js

📦 Imports

Name Source
Node ./Node.js
addMethodChaining ../tsl/TSLCore.js
nodeProxy ../tsl/TSLCore.js

Functions

BypassNode.getNodeType(builder: any): string

Parameters:

  • builder any

Returns: string

Calls:

  • this.outputNode.getNodeType
Code
getNodeType( builder ) {

        return this.outputNode.getNodeType( builder );

    }

BypassNode.generate(builder: any): string | Node

Parameters:

  • builder any

Returns: string | Node

Calls:

  • this.callNode.build
  • builder.addLineFlowCode
  • this.outputNode.build
Code
generate( builder ) {

        const snippet = this.callNode.build( builder, 'void' );

        if ( snippet !== '' ) {

            builder.addLineFlowCode( snippet, this );

        }

        return this.outputNode.build( builder );

    }

Classes

BypassNode

Class Code
class BypassNode extends Node {

    static get type() {

        return 'BypassNode';

    }

    /**
     * Constructs a new bypass node.
     *
     * @param {Node} outputNode - The output node.
     * @param {Node} callNode - The call node.
     */
    constructor( outputNode, callNode ) {

        super();

        /**
         * This flag can be used for type testing.
         *
         * @type {boolean}
         * @readonly
         * @default true
         */
        this.isBypassNode = true;

        /**
         * The output node.
         *
         * @type {Node}
         */
        this.outputNode = outputNode;

        /**
         * The call node.
         *
         * @type {Node}
         */
        this.callNode = callNode;

    }

    getNodeType( builder ) {

        return this.outputNode.getNodeType( builder );

    }

    generate( builder ) {

        const snippet = this.callNode.build( builder, 'void' );

        if ( snippet !== '' ) {

            builder.addLineFlowCode( snippet, this );

        }

        return this.outputNode.build( builder );

    }

}

Methods

getNodeType(builder: any): string
Code
getNodeType( builder ) {

        return this.outputNode.getNodeType( builder );

    }
generate(builder: any): string | Node
Code
generate( builder ) {

        const snippet = this.callNode.build( builder, 'void' );

        if ( snippet !== '' ) {

            builder.addLineFlowCode( snippet, this );

        }

        return this.outputNode.build( builder );

    }