Navigation
next
Shiboken 1.2.1 documentation
»
Next topic
1. Frequently Asked Questions
Quick search
Table of contents
ΒΆ
1. Frequently Asked Questions
1.1. General
1.1.1. What is Shiboken?
1.1.2. Why did you switch from Boost.Python to Shiboken?
1.2. Creating bindings
1.2.1. Can I wrap non-Qt libraries?
1.2.2. Is there any runtime dependency on the generated binding?
1.2.3. What do I have to do to create my bindings?
1.2.4. Is there any recommended build system?
1.2.5. Can I write closed-source bindings with the generator?
1.2.6. What is ‘inject code’?
2. Generator Overview
2.1. Creating new bindings
2.2. Handwritten inputs
3. Command line options
3.1. Usage
3.2. Options
4. Binding Project File
4.1. The project file structure
4.2. Project file tags
5. Type System Variables
5.1. Variables
5.2. Example
6. User Defined Type Conversion
6.1. Container Conversions
6.2. Variables & Functions
6.3. Converting The Old Converters
7. Code Injection Semantics
7.1. Conventions
7.2. inject-code tag
7.3. Anatomy of Code Injection
7.3.1. Noteworthy Cases
7.4. Code Injection for Functions/Methods
7.4.1. On The Native Side
7.4.2. On The Target Side
7.5. Code Injection for Wrapped Classes
7.5.1. On The Native Side
7.5.2. On The Target Side
7.6. Code Injection for Modules
7.6.1. On The Native Side
7.6.2. On The Target Side
8. Sequence Protocol
9. Object ownership
9.1. Ownership basics
9.2. Invalidating objects
9.2.1. C++ taking ownership
9.2.2. Invalidate after use
9.2.3. Objects with virtual methods
9.3. Parent-child relationship
9.3.1. Parentship heuristics
9.3.2. Return value heuristics
9.4. Common pitfalls
9.4.1. Not saving unowned objects references
10. Words of Advice
10.1. Duck punching and virtual methods
10.2. Python old style classes and PySide
11. Shiboken module
11.1. Functions
11.2. Detailed description