code: protected Match<?> match() {
          Match<?> m = result().getMatch();
          if (m == null) {
              throw new IllegalStateException("Match failed");
          }
          return m;
      }
docs: For internal use. Fails if this is a mismatch.
  @return this