Cached member scope creation

This commit is contained in:
Igor Chevdar
2018-06-18 16:04:04 +03:00
parent 57f93e2cdb
commit 119e2ca37e
@@ -60,14 +60,14 @@ class KonanPackageFragment(
KonanClassDataFinder(proto, nameResolver)
}
override fun getMemberScope(): DeserializedPackageMemberScope {
val packageProto = proto.getPackage()
return DeserializedPackageMemberScope( this, packageProto,
nameResolver, /* containerSource = */ null,
components, {loadClassNames()} )
private val memberScope_ by lazy {
DeserializedPackageMemberScope(this, proto.getPackage(),
nameResolver, /* containerSource = */ null,
components, { loadClassNames() })
}
override fun getMemberScope(): DeserializedPackageMemberScope = memberScope_
private val classifierNames by lazy {
val result = mutableSetOf<Name>()
result.addAll(loadClassNames())