VTK
Classes | Macros | Typedefs | Enumerations | Functions
vtkParseData.h File Reference
#include "vtkParseType.h"
#include "vtkParseString.h"
Include dependency graph for vtkParseData.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _ItemInfo
 ItemInfo just contains an index. More...
 
struct  _TemplateInfo
 TemplateInfo holds template definitions. More...
 
struct  _ValueInfo
 ValueInfo is for typedefs, constants, variables, function parameters, and return values. More...
 
struct  _FunctionInfo
 FunctionInfo is for functions and methods. More...
 
struct  _UsingInfo
 UsingInfo is for using directives. More...
 
struct  _ClassInfo
 ClassInfo is for classes, structs, unions, and namespaces. More...
 
struct  _FileInfo
 FileInfo is for header files. More...
 

Macros

#define MAX_ARGS   20
 

Typedefs

typedef enum _parse_access_t parse_access_t
 Access flags. More...
 
typedef enum _parse_item_t parse_item_t
 ItemType constants. More...
 
typedef struct _ItemInfo ItemInfo
 ItemInfo just contains an index. More...
 
typedef struct _ValueInfo ValueInfo
 
typedef struct _FunctionInfo FunctionInfo
 
typedef struct _FileInfo FileInfo
 
typedef struct _TemplateInfo TemplateInfo
 TemplateInfo holds template definitions. More...
 
typedef struct _UsingInfo UsingInfo
 UsingInfo is for using directives. More...
 
typedef struct _ClassInfo ClassInfo
 ClassInfo is for classes, structs, unions, and namespaces. More...
 
typedef struct _ClassInfo EnumInfo
 EnumInfo is for enums For scoped enums, the constants are in the enum itself, but for standard enums, the constants are at the same level as the enum. More...
 
typedef struct _ClassInfo NamespaceInfo
 Namespace is for namespaces. More...
 

Enumerations

enum  _parse_access_t { VTK_ACCESS_PUBLIC = 0, VTK_ACCESS_PROTECTED = 1, VTK_ACCESS_PRIVATE = 2 }
 Access flags. More...
 
enum  _parse_item_t {
  VTK_NAMESPACE_INFO = 1, VTK_CLASS_INFO = 2, VTK_STRUCT_INFO = 3, VTK_UNION_INFO = 4,
  VTK_ENUM_INFO = 5, VTK_FUNCTION_INFO = 6, VTK_VARIABLE_INFO = 7, VTK_CONSTANT_INFO = 8,
  VTK_TYPEDEF_INFO = 9, VTK_USING_INFO = 10
}
 ItemType constants. More...
 

Functions

void vtkParse_InitFile (FileInfo *file_info)
 Initializer methods. More...
 
void vtkParse_InitNamespace (NamespaceInfo *namespace_info)
 
void vtkParse_InitClass (ClassInfo *cls)
 
void vtkParse_InitFunction (FunctionInfo *func)
 
void vtkParse_InitValue (ValueInfo *val)
 
void vtkParse_InitEnum (EnumInfo *item)
 
void vtkParse_InitUsing (UsingInfo *item)
 
void vtkParse_InitTemplate (TemplateInfo *arg)
 
void vtkParse_CopyNamespace (NamespaceInfo *data, const NamespaceInfo *orig)
 Copy methods. More...
 
void vtkParse_CopyClass (ClassInfo *data, const ClassInfo *orig)
 
void vtkParse_CopyFunction (FunctionInfo *data, const FunctionInfo *orig)
 
void vtkParse_CopyValue (ValueInfo *data, const ValueInfo *orig)
 
void vtkParse_CopyEnum (EnumInfo *data, const EnumInfo *orig)
 
void vtkParse_CopyUsing (UsingInfo *data, const UsingInfo *orig)
 
void vtkParse_CopyTemplate (TemplateInfo *data, const TemplateInfo *orig)
 
void vtkParse_FreeFile (FileInfo *file_info)
 Free methods. More...
 
void vtkParse_FreeNamespace (NamespaceInfo *namespace_info)
 
void vtkParse_FreeClass (ClassInfo *cls)
 
void vtkParse_FreeFunction (FunctionInfo *func)
 
void vtkParse_FreeValue (ValueInfo *val)
 
void vtkParse_FreeEnum (EnumInfo *item)
 
void vtkParse_FreeUsing (UsingInfo *item)
 
void vtkParse_FreeTemplate (TemplateInfo *arg)
 
void vtkParse_AddStringToArray (const char ***valueArray, int *count, const char *value)
 Add a string to an array of strings, grow array as necessary. More...
 
void vtkParse_AddItemToArray (ItemInfo **valueArray, int *count, parse_item_t type, int idx)
 Expand the Item array for classes and namespaces. More...
 
void vtkParse_AddIncludeToFile (FileInfo *info, FileInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddClassToClass (ClassInfo *info, ClassInfo *item)
 
void vtkParse_AddFunctionToClass (ClassInfo *info, FunctionInfo *item)
 
void vtkParse_AddEnumToClass (ClassInfo *info, EnumInfo *item)
 
void vtkParse_AddConstantToClass (ClassInfo *info, ValueInfo *item)
 
void vtkParse_AddVariableToClass (ClassInfo *info, ValueInfo *item)
 
void vtkParse_AddTypedefToClass (ClassInfo *info, ValueInfo *item)
 
void vtkParse_AddUsingToClass (ClassInfo *info, UsingInfo *item)
 
void vtkParse_AddNamespaceToNamespace (NamespaceInfo *info, NamespaceInfo *item)
 
void vtkParse_AddClassToNamespace (NamespaceInfo *info, ClassInfo *item)
 
void vtkParse_AddFunctionToNamespace (NamespaceInfo *info, FunctionInfo *item)
 
void vtkParse_AddEnumToNamespace (NamespaceInfo *info, EnumInfo *item)
 
void vtkParse_AddConstantToNamespace (NamespaceInfo *info, ValueInfo *item)
 
void vtkParse_AddVariableToNamespace (NamespaceInfo *info, ValueInfo *item)
 
void vtkParse_AddTypedefToNamespace (NamespaceInfo *info, ValueInfo *item)
 
void vtkParse_AddUsingToNamespace (NamespaceInfo *info, UsingInfo *item)
 
void vtkParse_AddParameterToFunction (FunctionInfo *info, ValueInfo *item)
 
void vtkParse_AddParameterToTemplate (TemplateInfo *info, ValueInfo *item)
 
void vtkParse_AddDefaultConstructors (ClassInfo *data, StringCache *cache)
 Add default constructors to a class if they do not already exist. More...
 

Macro Definition Documentation

◆ MAX_ARGS

#define MAX_ARGS   20

Definition at line 34 of file vtkParseData.h.

Typedef Documentation

◆ parse_access_t

Access flags.

◆ parse_item_t

ItemType constants.

◆ ItemInfo

typedef struct _ItemInfo ItemInfo

ItemInfo just contains an index.

◆ ValueInfo

typedef struct _ValueInfo ValueInfo

Definition at line 1 of file vtkParseData.h.

◆ FunctionInfo

typedef struct _FunctionInfo FunctionInfo

Definition at line 1 of file vtkParseData.h.

◆ FileInfo

typedef struct _FileInfo FileInfo

Definition at line 1 of file vtkParseData.h.

◆ TemplateInfo

typedef struct _TemplateInfo TemplateInfo

TemplateInfo holds template definitions.

◆ UsingInfo

typedef struct _UsingInfo UsingInfo

UsingInfo is for using directives.

◆ ClassInfo

typedef struct _ClassInfo ClassInfo

ClassInfo is for classes, structs, unions, and namespaces.

◆ EnumInfo

typedef struct _ClassInfo EnumInfo

EnumInfo is for enums For scoped enums, the constants are in the enum itself, but for standard enums, the constants are at the same level as the enum.

Definition at line 1 of file vtkParseData.h.

◆ NamespaceInfo

typedef struct _ClassInfo NamespaceInfo

Namespace is for namespaces.

Definition at line 1 of file vtkParseData.h.

Enumeration Type Documentation

◆ _parse_access_t

Access flags.

Enumerator
VTK_ACCESS_PUBLIC 
VTK_ACCESS_PROTECTED 
VTK_ACCESS_PRIVATE 

Definition at line 40 of file vtkParseData.h.

◆ _parse_item_t

ItemType constants.

Enumerator
VTK_NAMESPACE_INFO 
VTK_CLASS_INFO 
VTK_STRUCT_INFO 
VTK_UNION_INFO 
VTK_ENUM_INFO 
VTK_FUNCTION_INFO 
VTK_VARIABLE_INFO 
VTK_CONSTANT_INFO 
VTK_TYPEDEF_INFO 
VTK_USING_INFO 

Definition at line 50 of file vtkParseData.h.

Function Documentation

◆ vtkParse_InitFile()

void vtkParse_InitFile ( FileInfo file_info)

Initializer methods.

◆ vtkParse_InitNamespace()

void vtkParse_InitNamespace ( NamespaceInfo namespace_info)

◆ vtkParse_InitClass()

void vtkParse_InitClass ( ClassInfo cls)

◆ vtkParse_InitFunction()

void vtkParse_InitFunction ( FunctionInfo func)

◆ vtkParse_InitValue()

void vtkParse_InitValue ( ValueInfo val)

◆ vtkParse_InitEnum()

void vtkParse_InitEnum ( EnumInfo item)

◆ vtkParse_InitUsing()

void vtkParse_InitUsing ( UsingInfo item)

◆ vtkParse_InitTemplate()

void vtkParse_InitTemplate ( TemplateInfo arg)

◆ vtkParse_CopyNamespace()

void vtkParse_CopyNamespace ( NamespaceInfo data,
const NamespaceInfo orig 
)

Copy methods.

Strings are not deep-copied, they are assumed to be persistent.

◆ vtkParse_CopyClass()

void vtkParse_CopyClass ( ClassInfo data,
const ClassInfo orig 
)

◆ vtkParse_CopyFunction()

void vtkParse_CopyFunction ( FunctionInfo data,
const FunctionInfo orig 
)

◆ vtkParse_CopyValue()

void vtkParse_CopyValue ( ValueInfo data,
const ValueInfo orig 
)

◆ vtkParse_CopyEnum()

void vtkParse_CopyEnum ( EnumInfo data,
const EnumInfo orig 
)

◆ vtkParse_CopyUsing()

void vtkParse_CopyUsing ( UsingInfo data,
const UsingInfo orig 
)

◆ vtkParse_CopyTemplate()

void vtkParse_CopyTemplate ( TemplateInfo data,
const TemplateInfo orig 
)

◆ vtkParse_FreeFile()

void vtkParse_FreeFile ( FileInfo file_info)

Free methods.

Strings are not freed, they are assumed to be persistent.

◆ vtkParse_FreeNamespace()

void vtkParse_FreeNamespace ( NamespaceInfo namespace_info)

◆ vtkParse_FreeClass()

void vtkParse_FreeClass ( ClassInfo cls)

◆ vtkParse_FreeFunction()

void vtkParse_FreeFunction ( FunctionInfo func)

◆ vtkParse_FreeValue()

void vtkParse_FreeValue ( ValueInfo val)

◆ vtkParse_FreeEnum()

void vtkParse_FreeEnum ( EnumInfo item)

◆ vtkParse_FreeUsing()

void vtkParse_FreeUsing ( UsingInfo item)

◆ vtkParse_FreeTemplate()

void vtkParse_FreeTemplate ( TemplateInfo arg)

◆ vtkParse_AddStringToArray()

void vtkParse_AddStringToArray ( const char ***  valueArray,
int count,
const char *  value 
)

Add a string to an array of strings, grow array as necessary.

◆ vtkParse_AddItemToArray()

void vtkParse_AddItemToArray ( ItemInfo **  valueArray,
int count,
parse_item_t  type,
int  idx 
)

Expand the Item array for classes and namespaces.

◆ vtkParse_AddIncludeToFile()

void vtkParse_AddIncludeToFile ( FileInfo info,
FileInfo item 
)

Add various items to the structs.

◆ vtkParse_AddClassToClass()

void vtkParse_AddClassToClass ( ClassInfo info,
ClassInfo item 
)

◆ vtkParse_AddFunctionToClass()

void vtkParse_AddFunctionToClass ( ClassInfo info,
FunctionInfo item 
)

◆ vtkParse_AddEnumToClass()

void vtkParse_AddEnumToClass ( ClassInfo info,
EnumInfo item 
)

◆ vtkParse_AddConstantToClass()

void vtkParse_AddConstantToClass ( ClassInfo info,
ValueInfo item 
)

◆ vtkParse_AddVariableToClass()

void vtkParse_AddVariableToClass ( ClassInfo info,
ValueInfo item 
)

◆ vtkParse_AddTypedefToClass()

void vtkParse_AddTypedefToClass ( ClassInfo info,
ValueInfo item 
)

◆ vtkParse_AddUsingToClass()

void vtkParse_AddUsingToClass ( ClassInfo info,
UsingInfo item 
)

◆ vtkParse_AddNamespaceToNamespace()

void vtkParse_AddNamespaceToNamespace ( NamespaceInfo info,
NamespaceInfo item 
)

◆ vtkParse_AddClassToNamespace()

void vtkParse_AddClassToNamespace ( NamespaceInfo info,
ClassInfo item 
)

◆ vtkParse_AddFunctionToNamespace()

void vtkParse_AddFunctionToNamespace ( NamespaceInfo info,
FunctionInfo item 
)

◆ vtkParse_AddEnumToNamespace()

void vtkParse_AddEnumToNamespace ( NamespaceInfo info,
EnumInfo item 
)

◆ vtkParse_AddConstantToNamespace()

void vtkParse_AddConstantToNamespace ( NamespaceInfo info,
ValueInfo item 
)

◆ vtkParse_AddVariableToNamespace()

void vtkParse_AddVariableToNamespace ( NamespaceInfo info,
ValueInfo item 
)

◆ vtkParse_AddTypedefToNamespace()

void vtkParse_AddTypedefToNamespace ( NamespaceInfo info,
ValueInfo item 
)

◆ vtkParse_AddUsingToNamespace()

void vtkParse_AddUsingToNamespace ( NamespaceInfo info,
UsingInfo item 
)

◆ vtkParse_AddParameterToFunction()

void vtkParse_AddParameterToFunction ( FunctionInfo info,
ValueInfo item 
)

◆ vtkParse_AddParameterToTemplate()

void vtkParse_AddParameterToTemplate ( TemplateInfo info,
ValueInfo item 
)

◆ vtkParse_AddDefaultConstructors()

void vtkParse_AddDefaultConstructors ( ClassInfo data,
StringCache cache 
)

Add default constructors to a class if they do not already exist.