Json token notify

interface JsonTokenNotify
  """
  Callback interface for the streaming JSON token parser.

  Implement this to process JSON tokens as they are parsed, without
  materializing the full document tree.

  Token emission contract: objects emit ObjectStart, then alternating
  Key/value sequences, then ObjectEnd. Arrays emit ArrayStart, then
  values, then ArrayEnd. Changes to this emission order would break
  consumers — this contract is documented here at the point of coupling.
  """

  fun ref apply(parser: JsonTokenParser, token: JsonToken)
    """
    Called for each token parsed from the JSON document. Use `parser` to
    access parsed values (`last_string`, `last_number`) and to call
    `abort()` if parsing should stop early.
    """