YAJL 2.1.0
yajl_val_s Struct Reference

#include <yajl_tree.h>

Data Fields

yajl_type type
 
union { 
 
   char *   string 
 
   struct { 
 
      long long   i 
 
      double   d 
 
      char *   r 
 
      unsigned int   flags 
 
   }   number 
 
   struct { 
 
      const char **   keys 
 
      yajl_val *   values 
 
      size_t   len 
 
   }   object 
 
   struct { 
 
      yajl_val *   values 
 
      size_t   len 
 
   }   array 
 
u 
 

Detailed Description

A JSON value representation capable of holding one of the seven types above. For "string", "number", "object", and "array" additional data is available in the union. The "YAJL_IS_*" and "YAJL_GET_*" macros below allow type checking and convenient value extraction.

Field Documentation

◆ [struct]

struct { ... } yajl_val_s::array

◆ d

double yajl_val_s::d

◆ flags

unsigned int yajl_val_s::flags

Signals whether the i and d members are valid. See YAJL_NUMBER_INT_VALID and YAJL_NUMBER_DOUBLE_VALID.

◆ i

long long yajl_val_s::i

◆ keys

const char** yajl_val_s::keys

◆ len

size_t yajl_val_s::len

◆ [struct]

struct { ... } yajl_val_s::number

◆ [struct]

struct { ... } yajl_val_s::object

◆ r

char* yajl_val_s::r

◆ string

char* yajl_val_s::string

◆ type

yajl_type yajl_val_s::type

Type of the value contained. Use the "YAJL_IS_*" macros to check for a specific type.

◆ [union]

union { ... } yajl_val_s::u

Type-specific data. You may use the "YAJL_GET_*" macros to access these members.

◆ values

yajl_val* yajl_val_s::values

The documentation for this struct was generated from the following file: