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_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_AddDefaultConstructors (ClassInfo *data, StringCache *cache)
 Add default constructors to a class if they do not already exist. More...
 
void vtkParse_InitFile (FileInfo *file_info)
 Initializer methods. More...
 
void vtkParse_InitNamespace (NamespaceInfo *namespace_info)
 Initializer methods. More...
 
void vtkParse_InitClass (ClassInfo *cls)
 Initializer methods. More...
 
void vtkParse_InitFunction (FunctionInfo *func)
 Initializer methods. More...
 
void vtkParse_InitValue (ValueInfo *val)
 Initializer methods. More...
 
void vtkParse_InitEnum (EnumInfo *item)
 Initializer methods. More...
 
void vtkParse_InitUsing (UsingInfo *item)
 Initializer methods. More...
 
void vtkParse_InitTemplate (TemplateInfo *arg)
 Initializer methods. More...
 
void vtkParse_CopyNamespace (NamespaceInfo *data, const NamespaceInfo *orig)
 Copy methods. More...
 
void vtkParse_CopyClass (ClassInfo *data, const ClassInfo *orig)
 Copy methods. More...
 
void vtkParse_CopyFunction (FunctionInfo *data, const FunctionInfo *orig)
 Copy methods. More...
 
void vtkParse_CopyValue (ValueInfo *data, const ValueInfo *orig)
 Copy methods. More...
 
void vtkParse_CopyEnum (EnumInfo *data, const EnumInfo *orig)
 Copy methods. More...
 
void vtkParse_CopyUsing (UsingInfo *data, const UsingInfo *orig)
 Copy methods. More...
 
void vtkParse_CopyTemplate (TemplateInfo *data, const TemplateInfo *orig)
 Copy methods. More...
 
void vtkParse_FreeFile (FileInfo *file_info)
 Free methods. More...
 
void vtkParse_FreeNamespace (NamespaceInfo *namespace_info)
 Free methods. More...
 
void vtkParse_FreeClass (ClassInfo *cls)
 Free methods. More...
 
void vtkParse_FreeFunction (FunctionInfo *func)
 Free methods. More...
 
void vtkParse_FreeValue (ValueInfo *val)
 Free methods. More...
 
void vtkParse_FreeEnum (EnumInfo *item)
 Free methods. More...
 
void vtkParse_FreeUsing (UsingInfo *item)
 Free methods. More...
 
void vtkParse_FreeTemplate (TemplateInfo *arg)
 Free methods. More...
 
void vtkParse_AddIncludeToFile (FileInfo *info, FileInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddClassToClass (ClassInfo *info, ClassInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddFunctionToClass (ClassInfo *info, FunctionInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddEnumToClass (ClassInfo *info, EnumInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddConstantToClass (ClassInfo *info, ValueInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddVariableToClass (ClassInfo *info, ValueInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddTypedefToClass (ClassInfo *info, ValueInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddUsingToClass (ClassInfo *info, UsingInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddNamespaceToNamespace (NamespaceInfo *info, NamespaceInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddClassToNamespace (NamespaceInfo *info, ClassInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddFunctionToNamespace (NamespaceInfo *info, FunctionInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddEnumToNamespace (NamespaceInfo *info, EnumInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddConstantToNamespace (NamespaceInfo *info, ValueInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddVariableToNamespace (NamespaceInfo *info, ValueInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddTypedefToNamespace (NamespaceInfo *info, ValueInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddUsingToNamespace (NamespaceInfo *info, UsingInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddParameterToFunction (FunctionInfo *info, ValueInfo *item)
 Add various items to the structs. More...
 
void vtkParse_AddParameterToTemplate (TemplateInfo *info, ValueInfo *item)
 Add various items to the structs. More...
 

Macro Definition Documentation

#define MAX_ARGS   20

Definition at line 34 of file vtkParseData.h.

Typedef Documentation

Access flags.

ItemType constants.

typedef struct _ItemInfo ItemInfo

ItemInfo just contains an index.

typedef struct _ValueInfo ValueInfo

Definition at line 77 of file vtkParseData.h.

typedef struct _FunctionInfo FunctionInfo

Definition at line 78 of file vtkParseData.h.

typedef struct _FileInfo FileInfo

Definition at line 79 of file vtkParseData.h.

typedef struct _TemplateInfo TemplateInfo

TemplateInfo holds template definitions.

typedef struct _UsingInfo UsingInfo

UsingInfo is for using directives.

typedef struct _ClassInfo ClassInfo

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

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 212 of file vtkParseData.h.

typedef struct _ClassInfo NamespaceInfo

Namespace is for namespaces.

Definition at line 217 of file vtkParseData.h.

Enumeration Type Documentation

Access flags.

Enumerator
VTK_ACCESS_PUBLIC 
VTK_ACCESS_PROTECTED 
VTK_ACCESS_PRIVATE 

Definition at line 40 of file vtkParseData.h.

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

void vtkParse_InitFile ( FileInfo *  file_info)

Initializer methods.

void vtkParse_InitNamespace ( NamespaceInfo *  namespace_info)

Initializer methods.

void vtkParse_InitClass ( ClassInfo *  cls)

Initializer methods.

void vtkParse_InitFunction ( FunctionInfo *  func)

Initializer methods.

void vtkParse_InitValue ( ValueInfo *  val)

Initializer methods.

void vtkParse_InitEnum ( EnumInfo *  item)

Initializer methods.

void vtkParse_InitUsing ( UsingInfo *  item)

Initializer methods.

void vtkParse_InitTemplate ( TemplateInfo *  arg)

Initializer methods.

void vtkParse_CopyNamespace ( NamespaceInfo *  data,
const NamespaceInfo *  orig 
)

Copy methods.

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

void vtkParse_CopyClass ( ClassInfo *  data,
const ClassInfo *  orig 
)

Copy methods.

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

void vtkParse_CopyFunction ( FunctionInfo *  data,
const FunctionInfo *  orig 
)

Copy methods.

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

void vtkParse_CopyValue ( ValueInfo *  data,
const ValueInfo *  orig 
)

Copy methods.

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

void vtkParse_CopyEnum ( EnumInfo *  data,
const EnumInfo *  orig 
)

Copy methods.

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

void vtkParse_CopyUsing ( UsingInfo *  data,
const UsingInfo *  orig 
)

Copy methods.

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

void vtkParse_CopyTemplate ( TemplateInfo *  data,
const TemplateInfo *  orig 
)

Copy methods.

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

void vtkParse_FreeFile ( FileInfo *  file_info)

Free methods.

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

void vtkParse_FreeNamespace ( NamespaceInfo *  namespace_info)

Free methods.

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

void vtkParse_FreeClass ( ClassInfo *  cls)

Free methods.

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

void vtkParse_FreeFunction ( FunctionInfo *  func)

Free methods.

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

void vtkParse_FreeValue ( ValueInfo *  val)

Free methods.

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

void vtkParse_FreeEnum ( EnumInfo *  item)

Free methods.

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

void vtkParse_FreeUsing ( UsingInfo *  item)

Free methods.

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

void vtkParse_FreeTemplate ( TemplateInfo *  arg)

Free methods.

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

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

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

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

Expand the Item array for classes and namespaces.

void vtkParse_AddIncludeToFile ( FileInfo *  info,
FileInfo *  item 
)

Add various items to the structs.

void vtkParse_AddClassToClass ( ClassInfo *  info,
ClassInfo *  item 
)

Add various items to the structs.

void vtkParse_AddFunctionToClass ( ClassInfo *  info,
FunctionInfo *  item 
)

Add various items to the structs.

void vtkParse_AddEnumToClass ( ClassInfo *  info,
EnumInfo *  item 
)

Add various items to the structs.

void vtkParse_AddConstantToClass ( ClassInfo *  info,
ValueInfo *  item 
)

Add various items to the structs.

void vtkParse_AddVariableToClass ( ClassInfo *  info,
ValueInfo *  item 
)

Add various items to the structs.

void vtkParse_AddTypedefToClass ( ClassInfo *  info,
ValueInfo *  item 
)

Add various items to the structs.

void vtkParse_AddUsingToClass ( ClassInfo *  info,
UsingInfo *  item 
)

Add various items to the structs.

void vtkParse_AddNamespaceToNamespace ( NamespaceInfo *  info,
NamespaceInfo *  item 
)

Add various items to the structs.

void vtkParse_AddClassToNamespace ( NamespaceInfo *  info,
ClassInfo *  item 
)

Add various items to the structs.

void vtkParse_AddFunctionToNamespace ( NamespaceInfo *  info,
FunctionInfo *  item 
)

Add various items to the structs.

void vtkParse_AddEnumToNamespace ( NamespaceInfo *  info,
EnumInfo *  item 
)

Add various items to the structs.

void vtkParse_AddConstantToNamespace ( NamespaceInfo *  info,
ValueInfo *  item 
)

Add various items to the structs.

void vtkParse_AddVariableToNamespace ( NamespaceInfo *  info,
ValueInfo *  item 
)

Add various items to the structs.

void vtkParse_AddTypedefToNamespace ( NamespaceInfo *  info,
ValueInfo *  item 
)

Add various items to the structs.

void vtkParse_AddUsingToNamespace ( NamespaceInfo *  info,
UsingInfo *  item 
)

Add various items to the structs.

void vtkParse_AddParameterToFunction ( FunctionInfo *  info,
ValueInfo *  item 
)

Add various items to the structs.

void vtkParse_AddParameterToTemplate ( TemplateInfo *  info,
ValueInfo *  item 
)

Add various items to the structs.

void vtkParse_AddDefaultConstructors ( ClassInfo *  data,
StringCache *  cache 
)

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