From 815516b239f6ec6d649e71c355b803a5620abe97 Mon Sep 17 00:00:00 2001 From: Dmitry Petrashko Date: Mon, 20 Apr 2015 14:04:02 +0200 Subject: Implement getClassIfDefined. --- src/dotty/tools/dotc/core/Symbols.scala | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/dotty/tools/dotc/core/Symbols.scala') diff --git a/src/dotty/tools/dotc/core/Symbols.scala b/src/dotty/tools/dotc/core/Symbols.scala index 47342cb56..52040bcfd 100644 --- a/src/dotty/tools/dotc/core/Symbols.scala +++ b/src/dotty/tools/dotc/core/Symbols.scala @@ -325,6 +325,12 @@ trait Symbols { this: Context => def requiredClass(path: PreName): ClassSymbol = base.staticRef(path.toTypeName).requiredSymbol(_.isClass).asClass + /** Get ClassSymbol if class is either defined in current compilation run + * or present on classpath. + * Returns NoSymbol otherwise. */ + def getClassIfDefined(path: PreName): Symbol = + base.staticRef(path.toTypeName, generateStubs = false).requiredSymbol(_.isClass, generateStubs = false) + def requiredModule(path: PreName): TermSymbol = base.staticRef(path.toTermName).requiredSymbol(_ is Module).asTerm -- cgit v1.2.3