code: @SuppressWarnings("unchecked")
      @SneakyThrows
      public void init(final SQLStatementRuleDefinitionEntity dialectRuleDefinitionEntity, final ExtractorRuleDefinition extractorRuleDefinition) {
          for (SQLStatementRuleEntity each : dialectRuleDefinitionEntity.getRules()) {
              SQLStatementRule sqlStatementRule = new SQLStatementRule(each.getContext(), 
                      (Class<? extends SQLStatement>) Class.forName(each.getSqlStatementClass()),
                      (SQLStatementOptimizer) newClassInstance(each.getOptimizerClass()));
              sqlStatementRule.getExtractors().addAll(createExtractors(each.getExtractorRuleRefs(), extractorRuleDefinition));
              rules.put(getContextClassName(each.getContext()), sqlStatementRule);
          }
      }
docs: Initialize SQL statement rule definition.
  
  @param dialectRuleDefinitionEntity SQL dialect statement rule definition entity
  @param extractorRuleDefinition extractor rule definition