blob: e83e6f542273865c79467334ec698f87cb1522dd [file] [log] [blame]
// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
part of scanner;
class ParserTask extends CompilerTask {
ParserTask(Compiler compiler) : super(compiler);
String get name => 'Parser';
Node parse(Element element) {
return measure(() => element.parseNode(compiler));
}
Node parseCompilationUnit(Token token) {
return measure(() {
NodeListener listener = new NodeListener(compiler, null);
Parser parser = new Parser(listener);
parser.parseUnit(token);
Node result = listener.popNode();
assert(listener.nodes.isEmpty);
return result;
});
}
}