@NotNull public static Query<DotNetTypeDeclaration> search( @NotNull final DotNetTypeDeclaration typeDeclaration, final boolean checkDeep, @NotNull Function<DotNetTypeDeclaration, DotNetTypeDeclaration> transformer) { return search(typeDeclaration, typeDeclaration.getUseScope(), checkDeep, transformer); }
@NotNull public static Query<DotNetTypeDeclaration> search( @NotNull final DotNetTypeDeclaration typeDeclaration, @NotNull SearchScope scope, final boolean checkDeep, final boolean checkInheritance, Function<DotNetTypeDeclaration, DotNetTypeDeclaration> transformer) { String vmQName = ApplicationManager.getApplication() .runReadAction( new Computable<String>() { @Override public String compute() { if (typeDeclaration.hasModifier(DotNetModifier.SEALED)) { return null; } return typeDeclaration.getVmQName(); } }); if (vmQName == null) { return EmptyQuery.getEmptyQuery(); } return search( new SearchParameters( typeDeclaration.getProject(), vmQName, scope, checkDeep, checkInheritance, transformer)); }
@NotNull public static Query<DotNetTypeDeclaration> search( @NotNull final DotNetTypeDeclaration typeDeclaration, final boolean checkDeep) { return search( typeDeclaration, typeDeclaration.getUseScope(), checkDeep, DotNetPsiSearcher.DEFAULT_TRANSFORMER); }