Class SMethodVirtualTable


  • public final class SMethodVirtualTable
    extends Object
    Primitive representation of the virtual behavior methods table. Contains a mapping from a SMethodId (which are the same for the overriding virtual methods) to the concrete SMethod with implementation (SMethod identifies its location up to a concept so that two overriding virtual methods are different for two concepts) Created by apyshkin on 28/07/15.
    • Method Detail

      • get

        @Nullable
        public SMethod<?> get​(@NotNull
                              SMethodId methodId)
        Parameters:
        methodId - -- the id of the virtual method;
        Returns:
        corresponding SMethod or null if the virtual table does not contain the id
      • merge

        public void merge​(@NotNull
                          BHDescriptor descriptor)
        merges a descriptor into the vTable mainly a method from 'another' descriptor is merged into myIdToImplementationTable if only there is no any record in it yet
      • getMethods

        @NotNull
        public Set<SMethod<?>> getMethods()
        Returns:
        all the virtual methods including the abstract ones