lib/recaster.js
function recast(args) {
     var encoding = args.encoding || undefined;
    // var vow = VOW.make();
    return readData(args.fullPath, args.srcData, args.type, args.path)
        .when(function(data) {
            data.isModule = args.isModule;
            args.srcData = data.recast;
            args.type = data.type;
            data.path = args.path;
            // oldType = args.type = data.type;
            if (!data.type || !extToFunction[data.type])
            {
                // vow.break({ recast: args.srcData, type: data.type });
                return VOW.kept({ recast: args.srcData, type: data.type });
                // return VOW.keep({ recast: args.srcData, type: data.type });
            }
            else {
                data.recast = data.recast.toString();
                var f = extToFunction[data.type];
                // debug('data=' ,data);
                // console.log(extToFunction['html'].toString());
                return f(data);
                // f(data).when(
                //     function(data) {
                //         debug('data=' ,data);
                //         data.recast = data.recast.toString();
                //         vow.keep(data);
                //     },
                //     function(err) {
                //         vow.breek(err);
                //     }
                // );
            }
        }).when(
            function(data) {
                
                if (encoding) return transform.zip(data, encoding);
                else return VOW.kept(data);
            }
        );
    // return vow.promise;
}
function recast(args) {
     var encoding = args.encoding || undefined;
    // var vow = VOW.make();
    return readData(args.fullPath, args.srcData, args.type, args.path)
        .when(function(data) {
            data.isModule = args.isModule;
            args.srcData = data.recast;
            args.type = data.type;
            data.path = args.path;
            // oldType = args.type = data.type;
            if (!data.type || !extToFunction[data.type])
            {
                // vow.break({ recast: args.srcData, type: data.type });
                return VOW.kept({ recast: args.srcData, type: data.type });
                // return VOW.keep({ recast: args.srcData, type: data.type });
            }
            else {
                data.recast = data.recast.toString();
                var f = extToFunction[data.type];
                // debug('data=' ,data);
                // console.log(extToFunction['html'].toString());
                return f(data);
                // f(data).when(
                //     function(data) {
                //         debug('data=' ,data);
                //         data.recast = data.recast.toString();
                //         vow.keep(data);
                //     },
                //     function(err) {
                //         vow.breek(err);
                //     }
                // );
            }
        }).when(
            function(data) {
                
                if (encoding) return transform.zip(data, encoding);
                else return VOW.kept(data);
            }
        );
    // return vow.promise;
}
function recast ( args ) { var encoding = args . encoding || undefined ; // var vow = VOW.make(); return readData ( args . fullPath , args . srcData , args . type , args . path ) . when ( function ( data ) { data . isModule = args . isModule ; args . srcData = data . recast ; args . type = data . type ; data . path = args . path ; // oldType = args.type = data.type; if ( ! data . type || ! extToFunction [ data . type ] ) { // vow.break({ recast: args.srcData, type: data.type }); return VOW . kept ( { recast : args . srcData , type : data . type } ) ; // return VOW.keep({ recast: args.srcData, type: data.type }); } else { data . recast = data . recast . toString ( ) ; var f = extToFunction [ data . type ] ; // debug('data=' ,data); // console.log(extToFunction['html'].toString()); return f ( data ) ; // f(data).when( //     function(data) { //         debug('data=' ,data); //         data.recast = data.recast.toString(); //         vow.keep(data); //     }, //     function(err) { //         vow.breek(err); //     } // ); } } ) . when ( function ( data ) { if ( encoding ) return transform . zip ( data , encoding ) ; else return VOW . kept ( data ) ; } ) ; // return vow.promise; }
}); } else vow.keep(data); return vow.promise; }
} ) ; } else vow . keep ( data ) ; return vow . promise ; }