function (path, currentFileInfo, importOptions, callback) {
            var parserImports = this;
            this.queue.push(path);

            var fileParsedFunc = function (e, root, fullPath) {
                parserImports.queue.splice(parserImports.queue.indexOf(path), 1); // Remove the path from the queue

                var importedPreviously = fullPath in parserImports.files || fullPath === rootFilename;

                parserImports.files[fullPath] = root;                        // Store the root

                if (e && !parserImports.error) { parserImports.error = e; }

                callback(e, root, importedPreviously, fullPath);
            };

            if (less.Parser.importer) {
                less.Parser.importer(path, currentFileInfo, fileParsedFunc, env);
            } else {
                less.Parser.fileLoader(path, currentFileInfo, function(e, contents, fullPath, newFileInfo) {
                    if (e) {fileParsedFunc(e); return;}

                    var newEnv = new tree.parseEnv(env);

                    newEnv.currentFileInfo = newFileInfo;
                    newEnv.processImports = false;
                    newEnv.contents[fullPath] = contents;

                    if (currentFileInfo.reference || importOptions.reference) {
                        newFileInfo.reference = true;
                    }

                    if (importOptions.inline) {
                        fileParsedFunc(null, contents, fullPath);
                    } else {
                        new(less.Parser)(newEnv).parse(contents, function (e, root) {
                            fileParsedFunc(e, root, fullPath);
                        });
                    }
                }, env);
            }
        }
function (path, currentFileInfo, importOptions, callback) {
            var parserImports = this;
            this.queue.push(path);

            var fileParsedFunc = function (e, root, fullPath) {
                parserImports.queue.splice(parserImports.queue.indexOf(path), 1); // Remove the path from the queue

                var importedPreviously = fullPath in parserImports.files || fullPath === rootFilename;

                parserImports.files[fullPath] = root;                        // Store the root

                if (e && !parserImports.error) { parserImports.error = e; }

                callback(e, root, importedPreviously, fullPath);
            };

            if (less.Parser.importer) {
                less.Parser.importer(path, currentFileInfo, fileParsedFunc, env);
            } else {
                less.Parser.fileLoader(path, currentFileInfo, function(e, contents, fullPath, newFileInfo) {
                    if (e) {fileParsedFunc(e); return;}

                    var newEnv = new tree.parseEnv(env);

                    newEnv.currentFileInfo = newFileInfo;
                    newEnv.processImports = false;
                    newEnv.contents[fullPath] = contents;

                    if (currentFileInfo.reference || importOptions.reference) {
                        newFileInfo.reference = true;
                    }

                    if (importOptions.inline) {
                        fileParsedFunc(null, contents, fullPath);
                    } else {
                        new(less.Parser)(newEnv).parse(contents, function (e, root) {
                            fileParsedFunc(e, root, fullPath);
                        });
                    }
                }, env);
            }
        }
function ( path , currentFileInfo , importOptions , callback ) { var parserImports = this ; this . queue . push ( path ) ; var fileParsedFunc = function ( e , root , fullPath ) { parserImports . queue . splice ( parserImports . queue . indexOf ( path ) , 1 ) ; // Remove the path from the queue var importedPreviously = fullPath in parserImports . files || fullPath === rootFilename ; parserImports . files [ fullPath ] = root ; // Store the root if ( e && ! parserImports . error ) { parserImports . error = e ; } callback ( e , root , importedPreviously , fullPath ) ; } ; if ( less . Parser . importer ) { less . Parser . importer ( path , currentFileInfo , fileParsedFunc , env ) ; } else { less . Parser . fileLoader ( path , currentFileInfo , function ( e , contents , fullPath , newFileInfo ) { if ( e ) { fileParsedFunc ( e ) ; return ; } var newEnv = new tree . parseEnv ( env ) ; newEnv . currentFileInfo = newFileInfo ; newEnv . processImports = false ; newEnv . contents [ fullPath ] = contents ; if ( currentFileInfo . reference || importOptions . reference ) { newFileInfo . reference = true ; } if ( importOptions . inline ) { fileParsedFunc ( null , contents , fullPath ) ; } else { new ( less . Parser ) ( newEnv ) . parse ( contents , function ( e , root ) { fileParsedFunc ( e , root , fullPath ) ; } ) ; } } , env ) ; } }
Error in parsing/evaluating an import
Error in parsing / evaluating an import
Parse a file and return the root