All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.vulpine.lib.json.schema.v4.NullSchema Maven / Gradle / Ivy

package io.vulpine.lib.json.schema.v4;

import com.fasterxml.jackson.databind.JsonNode;
import io.vulpine.lib.json.schema.SchemaBuilder;
import io.vulpine.lib.json.schema.v4.trait.*;

/**
 * @since 1.0
 */
public interface NullSchema
extends
  SchemaNode,
  HasOrArray,
  HasOrBoolean,
  HasOrInteger,
  HasOrNumber,
  HasOrObject,
  HasOrString
{
  // ┌─────────────────────────────────────────────────────┐
  // │                                                     │
  // │ Return type overrides                               │
  // │                                                     │
  // └─────────────────────────────────────────────────────┘

  @Override
  NullSchema id(String id);

  @Override
  NullSchema removeId();

  @Override
  NullSchema $schema(String path);

  @Override
  NullSchema remove$Schema();

  @Override
  NullSchema $ref(String path);

  @Override
  NullSchema remove$Ref();

  @Override
  NullSchema description(String desc);

  @Override
  NullSchema removeDescription();

  @Override
  NullSchema title(String title);

  @Override
  NullSchema removeTitle();

  @Override
  UntypedChildSchema definition(String name);

  @Override
  NullSchema definition(String name, SchemaBuilder schema);

  @Override
  NullSchema removeDefinition(String name);

  @Override
  NullSchema removeDefinitions();

  @Override
  NullSchema defaultValue(JsonNode val);

  @Override
  NullSchema removeDefault();

  @Override
  UntypedChildSchema not();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy