26 #ifndef vtkParseData_h
27 #define vtkParseData_h
33 #ifndef VTK_PARSE_LEGACY_REMOVE
145 #ifndef VTK_PARSE_LEGACY_REMOVE
292 const char ***valueArray,
int *count,
const char *
value);
void vtkParse_AddParameterToTemplate(TemplateInfo *info, ValueInfo *item)
Add various items to the structs.
void vtkParse_CopyNamespace(NamespaceInfo *data, const NamespaceInfo *orig)
Copy methods.
void vtkParse_InitFunction(FunctionInfo *func)
Initializer methods.
void vtkParse_InitFile(FileInfo *file_info)
Initializer methods.
void vtkParse_FreeTemplate(TemplateInfo *arg)
Free methods.
struct _ClassInfo ClassInfo
ClassInfo is for classes, structs, unions, and namespaces.
void vtkParse_AddClassToClass(ClassInfo *info, ClassInfo *item)
Add various items to the structs.
void vtkParse_AddVariableToNamespace(NamespaceInfo *info, ValueInfo *item)
Add various items to the structs.
UsingInfo is for using directives.
void vtkParse_AddUsingToNamespace(NamespaceInfo *info, UsingInfo *item)
Add various items to the structs.
const char * ArgClasses[MAX_ARGS]
void vtkParse_CopyValue(ValueInfo *data, const ValueInfo *orig)
Copy methods.
void vtkParse_AddConstantToNamespace(NamespaceInfo *info, ValueInfo *item)
Add various items to the structs.
FileInfo is for header files.
void vtkParse_FreeEnum(EnumInfo *item)
Free methods.
void vtkParse_AddVariableToClass(ClassInfo *info, ValueInfo *item)
Add various items to the structs.
void vtkParse_InitValue(ValueInfo *val)
Initializer methods.
void vtkParse_InitTemplate(TemplateInfo *arg)
Initializer methods.
void vtkParse_FreeClass(ClassInfo *cls)
Free methods.
void vtkParse_AddTypedefToNamespace(NamespaceInfo *info, ValueInfo *item)
Add various items to the structs.
FunctionInfo ** Functions
void vtkParse_AddEnumToNamespace(NamespaceInfo *info, EnumInfo *item)
Add various items to the structs.
struct _UsingInfo UsingInfo
UsingInfo is for using directives.
void vtkParse_AddFunctionToClass(ClassInfo *info, FunctionInfo *item)
Add various items to the structs.
void vtkParse_FreeFunction(FunctionInfo *func)
Free methods.
void vtkParse_FreeFile(FileInfo *file_info)
Free methods.
void vtkParse_CopyUsing(UsingInfo *data, const UsingInfo *orig)
Copy methods.
void vtkParse_InitEnum(EnumInfo *item)
Initializer methods.
void vtkParse_CopyTemplate(TemplateInfo *data, const TemplateInfo *orig)
Copy methods.
unsigned int ArgTypes[MAX_ARGS]
ItemInfo just contains an index.
void vtkParse_FreeUsing(UsingInfo *item)
Free methods.
void vtkParse_AddIncludeToFile(FileInfo *info, FileInfo *item)
Add various items to the structs.
void vtkParse_AddItemToArray(ItemInfo **valueArray, int *count, parse_item_t type, int idx)
Expand the Item array for classes and namespaces.
ValueInfo is for typedefs, constants, variables, function parameters, and return values.
struct _ClassInfo ** Classes
struct _ItemInfo ItemInfo
ItemInfo just contains an index.
void vtkParse_InitUsing(UsingInfo *item)
Initializer methods.
struct _TemplateInfo TemplateInfo
TemplateInfo holds template definitions.
struct _FileInfo ** Includes
void vtkParse_FreeNamespace(NamespaceInfo *namespace_info)
Free methods.
void vtkParse_AddFunctionToNamespace(NamespaceInfo *info, FunctionInfo *item)
Add various items to the structs.
FunctionInfo is for functions and methods.
void vtkParse_AddClassToNamespace(NamespaceInfo *info, ClassInfo *item)
Add various items to the structs.
enum _parse_access_t parse_access_t
Access flags.
void vtkParse_AddEnumToClass(ClassInfo *info, EnumInfo *item)
Add various items to the structs.
void vtkParse_AddUsingToClass(ClassInfo *info, UsingInfo *item)
Add various items to the structs.
void vtkParse_FreeValue(ValueInfo *val)
Free methods.
void vtkParse_InitClass(ClassInfo *cls)
Initializer methods.
void vtkParse_CopyFunction(FunctionInfo *data, const FunctionInfo *orig)
Copy methods.
ClassInfo is for classes, structs, unions, and namespaces.
const char ** SuperClasses
void vtkParse_AddDefaultConstructors(ClassInfo *data, StringCache *cache)
Add default constructors to a class if they do not already exist.
struct _ClassInfo ** Namespaces
StringCache provides a simple way of allocating strings centrally.
void vtkParse_CopyEnum(EnumInfo *data, const EnumInfo *orig)
Copy methods.
void vtkParse_CopyClass(ClassInfo *data, const ClassInfo *orig)
Copy methods.
void vtkParse_AddParameterToFunction(FunctionInfo *info, ValueInfo *item)
Add various items to the structs.
enum _parse_item_t parse_item_t
ItemType constants.
void vtkParse_InitNamespace(NamespaceInfo *namespace_info)
Initializer methods.
struct _ClassInfo ** Enums
void vtkParse_AddStringToArray(const char ***valueArray, int *count, const char *value)
Add a string to an array of strings, grow array as necessary.
_parse_access_t
Access flags.
void vtkParse_AddConstantToClass(ClassInfo *info, ValueInfo *item)
Add various items to the structs.
void vtkParse_AddNamespaceToNamespace(NamespaceInfo *info, NamespaceInfo *item)
Add various items to the structs.
TemplateInfo holds template definitions.
void vtkParse_AddTypedefToClass(ClassInfo *info, ValueInfo *item)
Add various items to the structs.
_parse_item_t
ItemType constants.