File: vtkWrapText.h

package info (click to toggle)
vtk9 9.3.0%2Bdfsg1-4
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 267,116 kB
  • sloc: cpp: 2,195,914; ansic: 285,452; python: 104,858; sh: 4,061; yacc: 4,035; java: 3,977; xml: 2,771; perl: 2,189; lex: 1,762; objc: 153; makefile: 150; javascript: 90; tcl: 59
file content (65 lines) | stat: -rw-r--r-- 2,167 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
// SPDX-License-Identifier: BSD-3-Clause

/**
 * vtkWrap provides useful functions for generating wrapping code.
 */

#ifndef vtkWrapText_h
#define vtkWrapText_h

#include "vtkParse.h"
#include "vtkParseHierarchy.h"
#include "vtkWrappingToolsModule.h"

#ifdef __cplusplus
extern "C"
{
#endif

  /**
   * Quote a string for inclusion in a C string literal.  The "maxlen"
   * should be set to a value between 32 and 2047.  Values over 2047
   * will result in string literals too long for some compilers.  If
   * the string is truncated, a "..." will be appended.
   */
  VTKWRAPPINGTOOLS_EXPORT const char* vtkWrapText_QuoteString(const char* comment, size_t maxlen);

  /**
   * Format a doxygen comment for plain text, and word-wrap at
   * the specified width.  A 70-char width is recommended.
   */
  VTKWRAPPINGTOOLS_EXPORT const char* vtkWrapText_FormatComment(const char* comment, size_t width);

  /**
   * Format a method signature by applying word-wrap at the specified
   * width and taking special care not to split any literals or names.
   * A width of 70 chars is recommended.
   */
  VTKWRAPPINGTOOLS_EXPORT const char* vtkWrapText_FormatSignature(
    const char* signature, size_t width, size_t maxlen);

  /**
   * Produce a python signature for a method, for use in documentation.
   */
  VTKWRAPPINGTOOLS_EXPORT const char* vtkWrapText_PythonSignature(FunctionInfo* currentFunction);

  /**
   * Convert a C++ identifier into an identifier that can be used from Python.
   * The "::" namespace separators are converted to ".", and template args
   * are mangled and prefix with "T" according to the ia64 ABI. The output
   * parameter "pname" must be large enough to accept the result.  If it is
   * as long as the input name, that is sufficient. */
  VTKWRAPPINGTOOLS_EXPORT void vtkWrapText_PythonName(const char* name, char* pname);

  /**
   * Check if a name is a reserved keyword in Python.
   */
  VTKWRAPPINGTOOLS_EXPORT int vtkWrapText_IsPythonKeyword(const char* name);

#ifdef __cplusplus
}
#endif

#endif
/* VTK-HeaderTest-Exclude: vtkWrapText.h */