int vtkWrap_IsConstructor(ClassInfo *c, FunctionInfo *f) { size_t i, m; const char *cp = c->Name; if (cp && f->Name && !vtkWrap_IsDestructor(c, f)) { /* remove namespaces and template parameters from the name */ m = vtkParse_UnscopedNameLength(cp); while (cp[m] == ':' && cp[m+1] == ':') { cp += m + 2; m = vtkParse_UnscopedNameLength(cp); } for (i = 0; i < m; i++) { if (cp[i] == '<') { break; } } return (i == strlen(f->Name) && strncmp(cp, f->Name, i) == 0); } return 0; }
int vtkWrap_IsConstructor(ClassInfo *c, FunctionInfo *f) { if (c->Name && f->Name && !vtkWrap_IsDestructor(c, f)) { return (strcmp(c->Name, f->Name) == 0); } return 0; }
/* Check whether the destructor is public */ int vtkWrap_HasPublicDestructor(ClassInfo *data) { FunctionInfo *func; int i; for (i = 0; i < data->NumberOfFunctions; i++) { func = data->Functions[i]; if (vtkWrap_IsDestructor(data, func) && func->Access != VTK_ACCESS_PUBLIC) { return 0; } } return 1; }