I have the following Problem using doxygen in an C project. I have many internal structures that are not documented. Therefore it set `EXTRACT_ALL=NO` in my Doxyfile. Unfortunately doxygen still extracts some of them. Here is a minimal working example. Suppose the following header file: 

```
#ifndef HASHTABLE_H
# define HASHTABLE_H
#ifdef __cplusplus
extern "C" {
#endif
typedef void* object;
typedef char *(*object_getname)( object obj);
typedef void (*object_free)( object obj);
typedef mess_int_t (*object_hash)( char *name,  mess_int_t size);
typedef struct  {
 hashtable_entry *next;
 object *obj;
} hashtable_entry;
typedef struct {
 object_getname name;
 object_free freigabe;
 object_hash hash;
 mess_int_t size;
 hashtable_entry **hashtable;
} hashtable_t;
typedef hashtable_t * hashtable;

#ifdef __cplusplus
}
#endif
#endif

```

and the following options set in the Doxyfile:

```
EXTRACT_ALL            = NO
EXTRACT_PRIVATE        = NO 
EXTRACT_PACKAGE        = NO
EXTRACT_STATIC         = NO
EXTRACT_LOCAL_CLASSES  = NO 
EXTRACT_LOCAL_METHODS  = NO
EXTRACT_ANON_NSPACES   = NO

```

But in the generate Data structure list both structures are listed. Some other undocumented structures defined in the same way in other files are not listed as I expect it from the description of `EXTRACT_ALL=NO`. Why does doxygen extract some and others not? 

The whole doxyfile is available at: <http://pastebin.com/J7c9BbvW>

I am using doxygen 1.8.5