== Why is this an issue?

A structure, such as a ``++struct++``, ``++union++`` or ``++class++`` that grows too much tends to aggregate too many responsibilities and inevitably becomes harder to understand and therefore to maintain, and having a lot of fields is an indication that a structure has grown too large.


Above a specific threshold, it is strongly advised to refactor the structure into smaller ones that focus on well defined topics.

When computing the number of fields in a structure, consecutive bit-fields are counted as a single field: Bit-fields are commonly used to map external definitions, and the associated complexity only reflects this external system's intrinsic complexity.

ifdef::env-github,rspecator-view[]

'''
== Implementation Specification
(visible only on this page)

=== Message

Refactor this structure so it has no more than {0} fields, rather than the {1} it currently has.


=== Parameters

.maximumFieldThreshold
****

----
20
----

The maximum number of fields
****


'''
== Comments And Links
(visible only on this page)

include::../comments-and-links.adoc[]

endif::env-github,rspecator-view[]
