lib/less/parser/parser.js
function () {
                var path, features, index = parserInput.i;

                var dir = parserInput.$re(/^@import?\s+/);

                if (dir) {
                    var options = (dir ? this.importOptions() : null) || {};

                    if ((path = this.entities.quoted() || this.entities.url())) {
                        features = this.mediaFeatures();

                        if (!parserInput.$char(';')) {
                            parserInput.i = index;
                            error('missing semi-colon or unrecognised media features on import');
                        }
                        features = features && new(tree.Value)(features);
                        return new(tree.Import)(path, features, options, index, fileInfo);
                    }
                    else {
                        parserInput.i = index;
                        error('malformed import statement');
                    }
                }
            }
function () {
                var path, features, index = parserInput.i;

                var dir = parserInput.$re(/^@import?\s+/);

                if (dir) {
                    var options = (dir ? this.importOptions() : null) || {};

                    if ((path = this.entities.quoted() || this.entities.url())) {
                        features = this.mediaFeatures();

                        if (!parserInput.$char(';')) {
                            parserInput.i = index;
                            error('missing semi-colon or unrecognised media features on import');
                        }
                        features = features && new(tree.Value)(features);
                        return new(tree.Import)(path, features, options, index, fileInfo);
                    }
                    else {
                        parserInput.i = index;
                        error('malformed import statement');
                    }
                }
            }
function ( ) { var path , features , index = parserInput . i ; var dir = parserInput . $re ( / ^@import?\s+ / ) ; if ( dir ) { var options = ( dir ? this . importOptions ( ) : null ) || { } ; if ( ( path = this . entities . quoted ( ) || this . entities . url ( ) ) ) { features = this . mediaFeatures ( ) ; if ( ! parserInput . $char ( ';' ) ) { parserInput . i = index ; error ( 'missing semi-colon or unrecognised media features on import' ) ; } features = features && new ( tree . Value ) ( features ) ; return new ( tree . Import ) ( path , features , options , index , fileInfo ) ; } else { parserInput . i = index ; error ( 'malformed import statement' ) ; } } }
An @import atrule  @import "lib";  Depending on our environment, importing is done differently: In the browser, it's an XHR request, in Node, it would be a file-system operation. The function used for importing is stored in `import`, which we pass to the Import constructor.
An