code: public GraphQLSchema makeExecutableSchema(Options options, TypeDefinitionRegistry typeRegistry, RuntimeWiring wiring) throws SchemaProblem {
  
          TypeDefinitionRegistry typeRegistryCopy = new TypeDefinitionRegistry();
          typeRegistryCopy.merge(typeRegistry);
  
          schemaGeneratorHelper.addDeprecatedDirectiveDefinition(typeRegistryCopy);
  
          List<GraphQLError> errors = typeChecker.checkTypeRegistry(typeRegistryCopy, wiring, options.enforceSchemaDirectives);
          if (!errors.isEmpty()) {
              throw new SchemaProblem(errors);
          }
          BuildContext buildCtx = new BuildContext(typeRegistryCopy, wiring);
  
          return makeExecutableSchemaImpl(buildCtx);
      }
docs: This will take a {@link TypeDefinitionRegistry} and a {@link RuntimeWiring} and put them together to create a executable schema
  controlled by the provided options.
  
  @param options      the controlling options
  @param typeRegistry this can be obtained via {@link SchemaParser#parse(String)}
  @param wiring       this can be built using {@link RuntimeWiring#newRuntimeWiring()}
  
  @return an executable schema
  
  @throws SchemaProblem if there are problems in assembling a schema such as missing type resolvers or no operations defined