# Module Runtime_events.Type

    module Type: sig .. end

    type 'a t

The type for a user event content type.

    val unit : unit t

An event that has no data associated with it.

    type span =

`|` | `Begin`
`|` | `End`

    val span : span t

An event that has a beginning and an end.

    val int : int t

An event containing an integer value.

    val register : encode:(bytes -> 'a -> int) ->
           decode:(bytes -> int -> 'a) -> 'a t

Registers a custom type by providing an encoder and a decoder. The encoder writes the value in the provided buffer and returns the number of bytes written. The decoder gets a slice of the buffer of specified length, and returns the decoded value.

The maximum value length is 1024 bytes.