Clean code

This commit is contained in:
Michael Bogdanov
2015-03-12 14:52:57 +03:00
parent 3a5b55fc61
commit ac8e98572e
2 changed files with 28 additions and 46 deletions
@@ -255,19 +255,14 @@ public class JetPositionManager(private val myDebugProcess: DebugProcess) : Mult
return myDebugProcess.getRequestsManager().createClassPrepareRequest(classPrepareRequestor, className.replace('/', '.'))
}
override fun createPrepareRequests(classPrepareRequestor: ClassPrepareRequestor, sourcePosition: SourcePosition): MutableList<ClassPrepareRequest> {
if (sourcePosition.getFile() !is JetFile) {
override fun createPrepareRequests(requestor: ClassPrepareRequestor, position: SourcePosition): List<ClassPrepareRequest> {
if (position.getFile() !is JetFile) {
throw NoDataException.INSTANCE
}
val classNames = classNameForPositionAndInlinedOnes(sourcePosition)
if (classNames.isEmpty()) {
return Collections.emptyList()
return classNameForPositionAndInlinedOnes(position).map {
className -> myDebugProcess.getRequestsManager().createClassPrepareRequest(requestor, className.replace('/', '.'))
}
val requests = arrayListOf<ClassPrepareRequest>()
for (className in classNames) {
requests.add(myDebugProcess.getRequestsManager().createClassPrepareRequest(classPrepareRequestor, className.replace('/', '.')))
}
return requests
}
TestOnly
@@ -436,36 +431,36 @@ public class JetPositionManager(private val myDebugProcess: DebugProcess) : Mult
}
private fun findInlinedCalls(element: PsiElement?, jetFile: PsiFile?): List<String> {
if (element == null || jetFile !is JetFile) {
return emptyList()
}
return runReadAction {
var result = emptyList<String>()
if (element != null && jetFile is JetFile) {
val isInLibrary = LibraryUtil.findLibraryEntry(jetFile.getVirtualFile(), jetFile.getProject()) != null
val typeMapper = if (!isInLibrary) prepareTypeMapper(jetFile) else createTypeMapperForLibraryFile(element, jetFile)
val psiElement = getInternalClassNameForElement(element, typeMapper, jetFile, isInLibrary).element;
val result = arrayListOf<String>()
val isInLibrary = LibraryUtil.findLibraryEntry(jetFile.getVirtualFile(), jetFile.getProject()) != null
val typeMapper = if (!isInLibrary) prepareTypeMapper(jetFile) else createTypeMapperForLibraryFile(element, jetFile)
val psiElement = getInternalClassNameForElement(element, typeMapper, jetFile, isInLibrary).element;
if (psiElement is JetNamedFunction) {
val descriptor = typeMapper.getBindingContext().get(BindingContext.DECLARATION_TO_DESCRIPTOR, psiElement)
if (descriptor is SimpleFunctionDescriptor && descriptor.getInlineStrategy().isInline()) {
if (psiElement is JetNamedFunction) {
val descriptor = typeMapper.getBindingContext().get(BindingContext.DECLARATION_TO_DESCRIPTOR, psiElement)
val project = myDebugProcess.getProject()
val usagesSearchTarget = FindUsagesOptions(project).toSearchTarget(psiElement, true)
if (descriptor is SimpleFunctionDescriptor && descriptor.getInlineStrategy().isInline()) {
val project = myDebugProcess.getProject()
val usagesSearchTarget = FindUsagesOptions(project).toSearchTarget(psiElement, true)
result = arrayListOf<String>()
val usagesSearchRequest = DefaultSearchHelper<JetNamedFunction>(true).newRequest(usagesSearchTarget)
usagesSearchRequest.search().forEach {
val psiElement = it.getElement()
if (psiElement is JetElement) {
//TODO recursive search
val name = classNameForPosition(psiElement)
if (name != null) {
(result as MutableList<String>).add(name)
}
val usagesSearchRequest = DefaultSearchHelper<JetNamedFunction>(true).newRequest(usagesSearchTarget)
usagesSearchRequest.search().forEach {
val psiElement = it.getElement()
if (psiElement is JetElement) {
//TODO recursive search
val name = classNameForPosition(psiElement)
if (name != null) {
result.add(name)
}
}
}
}
}
result
}
}