public void add()

in src/main/com/intellij/lang/jsgraphql/types/schema/idl/TypeDefinitionRegistry.java [181:226]


  public void add(SDLDefinition definition) {
    ProgressManager.checkCanceled();

    // extensions
    if (definition instanceof ObjectTypeExtensionDefinition newEntry) {
      defineExt(objectTypeExtensions, newEntry, ObjectTypeExtensionDefinition::getName);
    }
    else if (definition instanceof InterfaceTypeExtensionDefinition newEntry) {
      defineExt(interfaceTypeExtensions, newEntry, InterfaceTypeExtensionDefinition::getName);
    }
    else if (definition instanceof UnionTypeExtensionDefinition newEntry) {
      defineExt(unionTypeExtensions, newEntry, UnionTypeExtensionDefinition::getName);
    }
    else if (definition instanceof EnumTypeExtensionDefinition newEntry) {
      defineExt(enumTypeExtensions, newEntry, EnumTypeExtensionDefinition::getName);
    }
    else if (definition instanceof ScalarTypeExtensionDefinition newEntry) {
      defineExt(scalarTypeExtensions, newEntry, ScalarTypeExtensionDefinition::getName);
    }
    else if (definition instanceof InputObjectTypeExtensionDefinition newEntry) {
      defineExt(inputObjectTypeExtensions, newEntry, InputObjectTypeExtensionDefinition::getName);
    }
    else if (definition instanceof SchemaExtensionDefinition) {
      schemaExtensionDefinitions.add((SchemaExtensionDefinition)definition);
    }
    else if (definition instanceof ScalarTypeDefinition newEntry) {
      define(scalarTypes, scalarTypes, newEntry);
    }
    else if (definition instanceof TypeDefinition newEntry) {
      define(types, types, newEntry);
    }
    else if (definition instanceof DirectiveDefinition newEntry) {
      define(directiveDefinitions, directiveDefinitions, newEntry);
    }
    else if (definition instanceof SchemaDefinition newSchema) {
      if (schema != null) {
        myErrors.add(new SchemaRedefinitionError(this.schema));
      }
      else {
        schema = newSchema;
      }
    }
    else {
      Assert.assertShouldNeverHappen();
    }
  }