Diff for /embedaddon/lighttpd/src/array.h between versions 1.1.1.1 and 1.1.1.2

version 1.1.1.1, 2013/10/14 10:32:47 version 1.1.1.2, 2016/11/02 10:35:00
Line 1 Line 1
 #ifndef ARRAY_H  #ifndef ARRAY_H
 #define ARRAY_H  #define ARRAY_H
   #include "first.h"
   
 #ifdef HAVE_CONFIG_H  
 # include "config.h"  
 #endif  
   
 #ifdef HAVE_PCRE_H  #ifdef HAVE_PCRE_H
 # include <pcre.h>  # include <pcre.h>
 #endif  #endif
   
 #include "buffer.h"  #include "buffer.h"
   #include "vector.h"
   
 #include <stdlib.h>  #include <stdlib.h>
   
Line 35  typedef struct { Line 33  typedef struct {
   
         size_t *sorted;          size_t *sorted;
   
        size_t used;        size_t used; /* <= SSIZE_MAX */
         size_t size;          size_t size;
   
         size_t unique_ndx;          size_t unique_ndx;
   
         size_t next_power_of_2;  
         int is_weakref; /* data is weakref, don't bother the data */  
 } array;  } array;
   
 typedef struct {  typedef struct {
Line 105  typedef enum { Line 100  typedef enum {
  * for compare: comp          cond  string/regex   * for compare: comp          cond  string/regex
  */   */
   
typedef struct _data_config data_config;typedef struct data_config data_config;
struct _data_config {DEFINE_TYPED_VECTOR_NO_RELEASE(config_weak, data_config*);
 
 struct data_config {
         DATA_UNSET;          DATA_UNSET;
   
         array *value;          array *value;
Line 118  struct _data_config { Line 115  struct _data_config {
         buffer *op;          buffer *op;
   
         int context_ndx; /* more or less like an id */          int context_ndx; /* more or less like an id */
        array *childs;        vector_config_weak children;
         /* nested */          /* nested */
         data_config *parent;          data_config *parent;
         /* for chaining only */          /* for chaining only */
Line 163  array *array_init(void); Line 160  array *array_init(void);
 array *array_init_array(array *a);  array *array_init_array(array *a);
 void array_free(array *a);  void array_free(array *a);
 void array_reset(array *a);  void array_reset(array *a);
int array_insert_unique(array *a, data_unset *str);void array_insert_unique(array *a, data_unset *entry);
data_unset *array_pop(array *a);data_unset *array_pop(array *a); /* only works on "simple" lists with autogenerated keys */
 int array_print(array *a, int depth);  int array_print(array *a, int depth);
 data_unset *array_get_unused_element(array *a, data_type_t t);  data_unset *array_get_unused_element(array *a, data_type_t t);
 data_unset *array_get_element(array *a, const char *key);  data_unset *array_get_element(array *a, const char *key);
   data_unset *array_extract_element(array *a, const char *key); /* removes found entry from array */
 void array_set_key_value(array *hdrs, const char *key, size_t key_len, const char *value, size_t val_len);  void array_set_key_value(array *hdrs, const char *key, size_t key_len, const char *value, size_t val_len);
data_unset *array_replace(array *a, data_unset *du);void array_replace(array *a, data_unset *entry);
 int array_strcasecmp(const char *a, size_t a_len, const char *b, size_t b_len);  int array_strcasecmp(const char *a, size_t a_len, const char *b, size_t b_len);
 void array_print_indent(int depth);  void array_print_indent(int depth);
 size_t array_get_max_key_length(array *a);  size_t array_get_max_key_length(array *a);

Removed from v.1.1.1.1  
changed lines
  Added in v.1.1.1.2


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>