code: @Nullable
    public static JsonReader enterPath(JsonReader reader, String path1, String path2)
        throws IOException {
      return enterPath(reader, path1) != null ? enterPath(reader, path2) : null;
    }
docs: This saves you from having to define nested types to read a single value
  
  <p>Instead of defining two types like this, and double-checking null..
  
  <pre>{@code
  class Response {
  Message message;
  }
  class Message {
  String status;
  }
  JsonAdapter<Response> adapter = moshi.adapter(Response.class);
  Message message = adapter.fromJson(body.source());
  if (message != null && message.status != null) throw new IllegalStateException(message.status);
  }</pre>
  
  <p>You can advance to the field directly.
  
  <pre>{@code
  JsonReader status = enterPath(JsonReader.of(body.source()), "message", "status");
  if (status != null) throw new IllegalStateException(status.nextString());
  }</pre>