File: traits.rst

package info (click to toggle)
sol2 3.5.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 23,096 kB
  • sloc: cpp: 43,816; ansic: 1,018; python: 356; sh: 288; makefile: 202
file content (18 lines) | stat: -rw-r--r-- 1,200 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
customization traits
====================

These are customization points within the library to help you make sol2 work for the types in your framework and types. 

To learn more about various customizable traits, visit:

* :doc:`containers customization traits<containers>`
	- This is how to work with containers in their entirety and what operations you're afforded on them
	- when you have an compiler error when serializing a type that has ``begin`` and ``end`` functions but isn't exactly a container
* :doc:`unique usertype (custom pointer) traits<api/unique_usertype_traits>`
	- This is how to deal with unique usertypes, e.g. ``boost::shared_ptr``, reference-counted pointers, etc
	- Useful for custom pointers from all sorts of frameworks or handle types that employ very specific kinds of destruction semantics and access
* :doc:`customization points<tutorial/customization>`
	- This is how to customize a type to work with sol2
	- Can be used for specializations to push strings and other class types that are not natively ``std::string`` or ``const char*``, like `a wxString, for example`_
	  
.. _a wxString, for example: https://github.com/ThePhD/sol2/issues/140#issuecomment-237934947