moves vector operations to a location where they're operating on complete types
Several JSON types form members to a vector of an incomplete type, which is
not allowed. libc++ has historically turned a blind eye here, but an incoming
patch will cause these types to break. This commit intends to get in front of
that libc++ change by moving all function definitions that reference vectors to
after all JSON objects are defined.
moves vector operations to a location where they're operating on complete types
Several JSON types form members to a vector of an incomplete type, which is not allowed. libc++ has historically turned a blind eye here, but an incoming patch will cause these types to break. This commit intends to get in front of that libc++ change by moving all function definitions that reference vectors to after all JSON objects are defined.