File: Simple_Type.dddoc

package info (click to toggle)
seqan 1.4.1%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 257,080 kB
  • ctags: 38,576
  • sloc: cpp: 301,711; python: 26,086; sh: 659; xml: 188; awk: 129; makefile: 53
file content (19 lines) | stat: -rw-r--r-- 956 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
.Concept.SimpleConcept Type:
..summary:Object that does not need constructors, destructors or copy assignment operators.
..description:
All POD ("plain old data") types are simple types, but some simple types are not POD types, e.g. the subclasses of @Class.SimpleType@.
A simple type can have constructors, destructors or copy assignment operators,
but it can be proper default constructed without using a default constructor, destructed without calling the destructor and copied without calling a copy constructor or a copy assignment operator.
Hence, simple types can be handled by fast memory manipulation functions.
This greatly speeds up functions like @Function.arrayCopy@.
..remarks:
...text:If you want specify a custom type $MyClass$ to be simple, then just specialize the @Metafunction.IsSimple.IsSimple metafunction@:
...code:template <>
struct IsSimple<MyClass>
{
    typedef True Type;
};
..see:Metafunction.IsSimple
..see:Class.SimpleType