type ObjectMarshaler … type ObjectMarshalerFunc … // MarshalLogObject calls the underlying function. func (f ObjectMarshalerFunc) MarshalLogObject(enc ObjectEncoder) error { … } type ArrayMarshaler … type ArrayMarshalerFunc … // MarshalLogArray calls the underlying function. func (f ArrayMarshalerFunc) MarshalLogArray(enc ArrayEncoder) error { … }