The record type of message field descriptors. It contains
- an immutable type field holding a promise,
- an immutable repeated? field holding a boolean,
- an immutable packed? field holding a boolean,
- an immutable accessor field holding a procedure from instances of the containing message type to values of the field, with an optional default argument, and
- an immutable mutator field holding a procedure that sets the field value in an instance of the containing message type.
The type field refers to a SRFI-99 record type descriptor of another protocol buffer message or to an enumeration or primitive type descriptor record. The field-info-type accessor automatically forces the promise contained in this field.