sbkstring.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536
  1. // Copyright (C) 2019 The Qt Company Ltd.
  2. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
  3. #ifndef SBKSTRING_H
  4. #define SBKSTRING_H
  5. #include "sbkpython.h"
  6. #include "shibokenmacros.h"
  7. namespace Shiboken::String
  8. {
  9. LIBSHIBOKEN_API bool check(PyObject *obj);
  10. LIBSHIBOKEN_API bool checkIterable(PyObject *obj);
  11. /// Check for iterable function arguments (excluding enumerations)
  12. LIBSHIBOKEN_API bool checkIterableArgument(PyObject *obj);
  13. LIBSHIBOKEN_API bool checkPath(PyObject *path);
  14. LIBSHIBOKEN_API bool checkType(PyTypeObject *obj);
  15. LIBSHIBOKEN_API bool checkChar(PyObject *obj);
  16. LIBSHIBOKEN_API bool isConvertible(PyObject *obj);
  17. LIBSHIBOKEN_API PyObject *fromCString(const char *value);
  18. LIBSHIBOKEN_API PyObject *fromCString(const char *value, int len);
  19. LIBSHIBOKEN_API const char *toCString(PyObject *str);
  20. LIBSHIBOKEN_API const char *toCString(PyObject *str, Py_ssize_t *len);
  21. LIBSHIBOKEN_API bool concat(PyObject **val1, PyObject *val2);
  22. LIBSHIBOKEN_API PyObject *fromFormat(const char *format, ...);
  23. LIBSHIBOKEN_API PyObject *fromStringAndSize(const char *str, Py_ssize_t size);
  24. LIBSHIBOKEN_API int compare(PyObject *val1, const char *val2);
  25. LIBSHIBOKEN_API Py_ssize_t len(PyObject *str);
  26. LIBSHIBOKEN_API PyObject *createStaticString(const char *str);
  27. LIBSHIBOKEN_API PyObject *getSnakeCaseName(const char *name, bool lower);
  28. LIBSHIBOKEN_API PyObject *getSnakeCaseName(PyObject *name, bool lower);
  29. LIBSHIBOKEN_API PyObject *repr(PyObject *o);
  30. } // namespace Shiboken::String
  31. #endif