/usr/share/doc/shiboken-doc/html/overview.html is in shiboken-doc 1.2.1-3build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>2. Generator Overview — Shiboken 1.2.1 documentation</title>
<link rel="stylesheet" href="_static/pysidedocs.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
VERSION: '1.2.1',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="top" title="Shiboken 1.2.1 documentation" href="index.html" />
<link rel="next" title="3. Command line options" href="commandlineoptions.html" />
<link rel="prev" title="1. Frequently Asked Questions" href="faq.html" />
</head>
<body>
<div id="container">
<div class="header">
<div class="header_container">
<div class="logo"><a href="http://www.pyside.org"><img alt="PySide" src="_static/pysidelogo.png" width="199" height="102" /></a></div>
<div class="related">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="commandlineoptions.html" title="3. Command line options"
accesskey="N">next</a></li>
<li class="right" >
<a href="faq.html" title="1. Frequently Asked Questions"
accesskey="P">previous</a> |</li>
<li><a href="contents.html">Shiboken 1.2.1 documentation</a> »</li>
</ul>
</div>
</div>
</div>
<div class="sphinxsidebar">
<div class="sphinxsidebarwrapper">
<h3><a href="contents.html">Table Of Contents</a></h3>
<ul>
<li><a class="reference internal" href="#">2. Generator Overview</a><ul>
<li><a class="reference internal" href="#creating-new-bindings">2.1. Creating new bindings</a></li>
<li><a class="reference internal" href="#handwritten-inputs">2.2. Handwritten inputs</a></li>
</ul>
</li>
</ul>
<h4>Previous topic</h4>
<p class="topless"><a href="faq.html"
title="previous chapter">1. Frequently Asked Questions</a></p>
<h4>Next topic</h4>
<p class="topless"><a href="commandlineoptions.html"
title="next chapter">3. Command line options</a></p>
<div id="searchbox" style="display: none">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
<input type="text" name="q" id="q" size="18" />
<input type="submit" value="Go" id="search_button" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body">
<div class="section" id="generator-overview">
<span id="gen-overview"></span><h1>2. Generator Overview<a class="headerlink" href="#generator-overview" title="Permalink to this headline">¶</a></h1>
<p>In a few words, the Generator is a utility that parses a collection of header and
typesystem files, generating other files (code, documentation, etc.) as result.</p>
<div class="section" id="creating-new-bindings">
<h2>2.1. Creating new bindings<a class="headerlink" href="#creating-new-bindings" title="Permalink to this headline">¶</a></h2>
<div class="figure align-center">
<a class="reference internal image-reference" href="_images/bindinggen-development.png"><img alt="_images/bindinggen-development.png" src="_images/bindinggen-development.png" /></a>
<p class="caption">Creating new bindings</p>
</div>
<p>Each module of the generator system has an specific role.</p>
<ol class="arabic simple">
<li>Provide enough data about the classes and functions.</li>
<li>Generate valid code, with modifications from typesystems and injected codes.</li>
<li>Modify the API to expose the objects in a way that fits you target language best.</li>
<li>Insert customizations where handwritten code is needed.</li>
</ol>
<div class="figure align-center">
<a class="reference internal image-reference" href="_images/boostqtarch.png"><img alt="_images/boostqtarch.png" src="_images/boostqtarch.png" /></a>
<p class="caption">Runtime architecture</p>
</div>
<p>The newly created binding will run on top of Boost.Python library which takes
care of interfacing Python and the underlying C++ library.</p>
</div>
<div class="section" id="handwritten-inputs">
<h2>2.2. Handwritten inputs<a class="headerlink" href="#handwritten-inputs" title="Permalink to this headline">¶</a></h2>
<p>Creating new bindings involves creating two pieces of “code”: the typesystem and
the inject code.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">typesystem:</th><td class="field-body">XML files that provides the developer with a tool to customize the
way that the generators will see the classes and functions. For
example, functions can be renamed, have its signature changed and
many other actions.</td>
</tr>
<tr class="field-even field"><th class="field-name">inject code:</th><td class="field-body">allows the developer to insert handwritten code where the generated
code is not suitable or needs some customization.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="footer">
<a href="http://www.qt-project.org/"><img src="_static/logo_qt.png" alt="Qt" border="0" /></a>
<a href="http://www.python.org"><img src="_static/logo_python.jpg" alt="Python" border="0" /></a>
</div>
</div>
</body>
</html>
|