private bool CursorIsValidDeclaration(ClangCursor c)
{
var result = false;
if ((c.Kind == NClang.CursorKind.FunctionDeclaration) || c.Kind == NClang.CursorKind.CXXMethod ||
c.Kind == NClang.CursorKind.Constructor || c.Kind == NClang.CursorKind.Destructor ||
c.Kind == NClang.CursorKind.FunctionDeclaration)
{
result = true;
}
return result;
}