PostGIS  3.3.9dev-r@@SVN_REVISION@@

◆ nd_box_to_json()

static char* nd_box_to_json ( const ND_BOX nd_box,
int  ndims 
)
static

Convert an ND_BOX to a JSON string for printing.

Definition at line 452 of file gserialized_estimate.c.

453 {
454  char *rv;
455  int i;
457 
458  stringbuffer_append(sb, "{\"min\":[");
459  for ( i = 0; i < ndims; i++ )
460  {
461  if ( i ) stringbuffer_append(sb, ",");
462  stringbuffer_aprintf(sb, "%.6g", nd_box->min[i]);
463  }
464  stringbuffer_append(sb, "],\"max\":[");
465  for ( i = 0; i < ndims; i++ )
466  {
467  if ( i ) stringbuffer_append(sb, ",");
468  stringbuffer_aprintf(sb, "%.6g", nd_box->max[i]);
469  }
470  stringbuffer_append(sb, "]}");
471 
474  return rv;
475 }
int stringbuffer_aprintf(stringbuffer_t *s, const char *fmt,...)
Appends a formatted string to the current string buffer, using the format and argument list provided.
Definition: stringbuffer.c:230
stringbuffer_t * stringbuffer_create(void)
Allocate a new stringbuffer_t.
Definition: stringbuffer.c:33
void stringbuffer_destroy(stringbuffer_t *s)
Free the stringbuffer_t and all memory managed within it.
Definition: stringbuffer.c:76
char * stringbuffer_getstringcopy(stringbuffer_t *s)
Returns a newly allocated string large enough to contain the current state of the string.
Definition: stringbuffer.c:124
static void stringbuffer_append(stringbuffer_t *s, const char *a)
Append the specified string to the stringbuffer_t.
Definition: stringbuffer.h:103
float4 max[ND_DIMS]
float4 min[ND_DIMS]

References ND_BOX_T::max, ND_BOX_T::min, stringbuffer_append(), stringbuffer_aprintf(), stringbuffer_create(), stringbuffer_destroy(), and stringbuffer_getstringcopy().

Referenced by compute_gserialized_stats_mode(), estimate_join_selectivity(), estimate_selectivity(), nd_box_overlap(), and nd_stats_to_json().

Here is the call graph for this function:
Here is the caller graph for this function: