Class PlatformMemberCalls

java.lang.Object
com.github._1c_syntax.bsl.languageserver.diagnostics.platform.PlatformMemberCalls

public final class PlatformMemberCalls extends Object
Резолв платформенных членов в сайтах вызовов модуля — общая база для диагностик устаревания (DeprecatedMethodCall) и недоступности-по-версии (UnavailableMemberCall). Версионная применимость члена (устаревание/недоступность) вынесена в PlatformMemberVersions.

Глобальные функции резолвятся напрямую (без инференса), поэтому собираются без pre-filter'а. Члены типов (метод/свойство) предварительно отсеиваются по имени через TypeService.isVersionedMemberName(String) — это лишь дешёвый фильтр, после которого TypeService.membersAt(DocumentContext, Position) выполняет точный резолв члена на конкретном типе-владельце (иначе сработал бы однофамилец с другого типа).

  • Method Details

    • collect

      public static List<TypeService.TypedMember> collect(DocumentContext documentContext, TypeService typeService)
      Собирает резолвленные платформенные члены во всех сайтах вызовов/обращений модуля. Для union-типа ресивера возвращаются все кандидаты-владельцы (по одному TypeService.TypedMember на тип) с одинаковым диапазоном.
    • hasDeletedPrefix

      public static boolean hasDeletedPrefix(@Nullable String name)
      Имя следует 1С-конвенции «устарело» — начинается с одного из префиксов DELETED_PREFIXES (без учёта регистра, с хотя бы одним символом после префикса). Используется в паре с MemberKind.PROPERTY, чтобы не захватывать одноимённые action-методы вроде УдалитьФайл.