lib/nodes/bundle.js
function(techName, techPath, bundleNode, magicNode, force, forked) {

        var arch = this.ctx.arch,
            node = this.useFileOrBuild(new BemCreateNode.BemCreateNode({
                root: this.root,
                level: this.level,
                item: this.item,
                techPath: techPath,
                techName: techName,
                force: force,
                forked: forked === undefined? ~this.getForkedTechs().indexOf(techName): forked
            }));

        if (!node) return;

        // Set bem create node to arch and add dependencies to it
        arch.setNode(node)
            .addChildren(node, node.getDependencies());

        // Add file aliases to arch and link with node as parents
        node.getFiles && node.getFiles().forEach(function(f) {

            if (node.getId() === f) return;

            var alias = new fileNodes.FileNode({ path: f, root: this.root });
            arch.setNode(alias).addParents(node, alias);

        }, this);

        bundleNode && arch.addParents(node, bundleNode);
        magicNode && arch.addChildren(node, magicNode);

        return node;

    }
function(techName, techPath, bundleNode, magicNode, force, forked) {

        var arch = this.ctx.arch,
            node = this.useFileOrBuild(new BemCreateNode.BemCreateNode({
                root: this.root,
                level: this.level,
                item: this.item,
                techPath: techPath,
                techName: techName,
                force: force,
                forked: forked === undefined? ~this.getForkedTechs().indexOf(techName): forked
            }));

        if (!node) return;

        // Set bem create node to arch and add dependencies to it
        arch.setNode(node)
            .addChildren(node, node.getDependencies());

        // Add file aliases to arch and link with node as parents
        node.getFiles && node.getFiles().forEach(function(f) {

            if (node.getId() === f) return;

            var alias = new fileNodes.FileNode({ path: f, root: this.root });
            arch.setNode(alias).addParents(node, alias);

        }, this);

        bundleNode && arch.addParents(node, bundleNode);
        magicNode && arch.addChildren(node, magicNode);

        return node;

    }
function ( techName , techPath , bundleNode , magicNode , force , forked ) { var arch = this . ctx . arch , node = this . useFileOrBuild ( new BemCreateNode . BemCreateNode ( { root : this . root , level : this . level , item : this . item , techPath : techPath , techName : techName , force : force , forked : forked === undefined ? ~ this . getForkedTechs ( ) . indexOf ( techName ) : forked } ) ) ; if ( ! node ) return ; // Set bem create node to arch and add dependencies to it arch . setNode ( node ) . addChildren ( node , node . getDependencies ( ) ) ; // Add file aliases to arch and link with node as parents node . getFiles && node . getFiles ( ) . forEach ( function ( f ) { if ( node . getId ( ) === f ) return ; var alias = new fileNodes . FileNode ( { path : f , root : this . root } ) ; arch . setNode ( alias ) . addParents ( node , alias ) ; } , this ) ; bundleNode && arch . addParents ( node , bundleNode ) ; magicNode && arch . addChildren ( node , magicNode ) ; return node ; }
Create a bem create node, add it to the arch,
add dependencies to it.

@param {String} techName
@param {String} techPath
@param {String} bundleNode
@param {String} magicNode
@param {Boolean} [force]
@param {Boolean} [forked]
@return {Node | undefined}
Create a bem create node add it to the arch add dependencies to it .