Doxygen would still generate xml for private_api::ArrayModel and would
try to resolve a reference to iself, which is not possible because we've
excluded the namespace:
```
stderr: (!) Critical error while generating the file for [/home/vagrant/sixtyfps/target/cppdocs/api/classsixtyfps_1_1Model.rst].Traceback (most recent call last):
File "/home/vagrant/.local/share/virtualenvs/docs-4wjFCyEr/lib/python3.8/site-packages/exhale/graph.py", line 2591, in generateSingleNodeRST
gen_file.write("{0}\n".format(node.baseOrDerivedListString(
File "/home/vagrant/.local/share/virtualenvs/docs-4wjFCyEr/lib/python3.8/site-packages/exhale/graph.py", line 393, in baseOrDerivedListString
link=nodeByRefid[refid].link_name
KeyError: 'classsixtyfps_1_1private__api_1_1ArrayModel'
```
Making the entire class as \private works around it.
Oddly, this isn't needed for IntModel, perhaps because it's not a template?
This reverts the Pipenv pinning of
f9ef21bffd and thus disables the logo, as
subsequent changes in the pinned sphinx fork cause unrelated breakages
when building docs. Let's re-enable this when the fixes are in an
upstream release of sphinx and the rtd theme.
This reverts commit e6727e6957.
Unfortunately in the CI the warnings as errors doesn't quite work as
well yet, producing different warnings that need fixing first.
Select that the compiler and xtask should be compiled as host binaries,
not target.
This also pulls in new corrosion with better cross-compilation support.
Move those two classes into the private_api namespace, which is excluded
from the API reference documentation.
For generate code the explicit qualification of Property<T> is changed,
for the cbindgen generated item types the private_api namespace is
pulled into the cbindgen_private namespace.
A few problem:
- the horizontal and vertical property were swapped
- The implementation of the "preferred_xxx" property was not materialized properly
because the `bindings` were borrowed in the materialize_fake_properties pass
- Since the Window has a stretch factor of 0., the preferred size of the inner layout
was not taken into account when merging the LayoutInfo. I believe taking the
maximum preferred size is the right solution when merging them.