PostGIS  3.4.0dev-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 462 of file gserialized_estimate.c.

463 {
464  char *rv;
465  int i;
467 
468  stringbuffer_append(sb, "{\"min\":[");
469  for ( i = 0; i < ndims; i++ )
470  {
471  if ( i ) stringbuffer_append(sb, ",");
472  stringbuffer_aprintf(sb, "%.6g", nd_box->min[i]);
473  }
474  stringbuffer_append(sb, "],\"max\":[");
475  for ( i = 0; i < ndims; i++ )
476  {
477  if ( i ) stringbuffer_append(sb, ",");
478  stringbuffer_aprintf(sb, "%.6g", nd_box->max[i]);
479  }
480  stringbuffer_append(sb, "]}");
481 
484  return rv;
485 }
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:247
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:85
char * stringbuffer_getstringcopy(stringbuffer_t *s)
Returns a newly allocated string large enough to contain the current state of the string.
Definition: stringbuffer.c:133
static void stringbuffer_append(stringbuffer_t *s, const char *a)
Append the specified string to the stringbuffer_t.
Definition: stringbuffer.h:105
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: