docs: private void initializeLookupCaches()
      {
          for (RuleProvider provider : providers)
          {
              Class<? extends RuleProvider> unproxiedClass = unwrapType(provider.getClass());
              classToProviderMap.put(unproxiedClass, provider);
              idToProviderMap.put(provider.getMetadata().getID(), provider);
          }
      }