# Package com.fasterxml.jackson.databind.jsonFormatVisitors

Classes used for exposing logical structure of POJOs as Jackson sees it, and exposed via `ObjectMapper.acceptJsonFormatVisitor(Class, JsonFormatVisitorWrapper)` and `ObjectMapper.acceptJsonFormatVisitor(com.fasterxml.jackson.databind.JavaType, JsonFormatVisitorWrapper)` methods.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  JsonAnyFormatVisitor |
  JsonArrayFormatVisitor |
  JsonBooleanFormatVisitor |
  JsonFormatVisitable | Interface `JsonSerializer` implements to allow for visiting type hierarchy.
  JsonFormatVisitorWithSerializerProvider |
  JsonFormatVisitorWrapper | Interface for visitor callbacks, when type in question can be any of legal JSON types.
  JsonIntegerFormatVisitor |
  JsonMapFormatVisitor |
  JsonNullFormatVisitor |
  JsonNumberFormatVisitor |
  JsonObjectFormatVisitor | Visitor called when properties of a type that maps to JSON Object are being visited: this usually means POJOs, but sometimes other types use it too (like `EnumMap`).
  JsonStringFormatVisitor |
  JsonValueFormatVisitor |

- Class Summary
  Class | Description
  --- | ---
  JsonAnyFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
  JsonArrayFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
  JsonBooleanFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
  JsonFormatVisitorWrapper.Base | Empty "no-op" implementation of `JsonFormatVisitorWrapper`, suitable for sub-classing.
  JsonIntegerFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
  JsonMapFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
  JsonNullFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
  JsonNumberFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
  JsonObjectFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
  JsonStringFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.
  JsonValueFormatVisitor.Base | Default "empty" implementation, useful as the base to start on; especially as it is guaranteed to implement all the method of the interface, even if new methods are getting added.

- Enum Summary
  Enum | Description
  --- | ---
  JsonFormatTypes |
  JsonValueFormat | This enum represents the encoded format for a jsonSchema value type

## Package com.fasterxml.jackson.databind.jsonFormatVisitors Description

Classes used for exposing logical structure of POJOs as Jackson sees it, and exposed via `ObjectMapper.acceptJsonFormatVisitor(Class, JsonFormatVisitorWrapper)` and `ObjectMapper.acceptJsonFormatVisitor(com.fasterxml.jackson.databind.JavaType, JsonFormatVisitorWrapper)` methods.

The main entrypoint for code, then, is `JsonFormatVisitorWrapper` and other types are recursively needed during traversal.