File: functiontemplates.yo

package info (click to toggle)
c%2B%2B-annotations 11.5.0-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 11,244 kB
  • sloc: cpp: 21,698; makefile: 1,505; ansic: 165; sh: 121; perl: 90
file content (110 lines) | stat: -rw-r--r-- 3,558 bytes parent folder | download | duplicates (3)
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
COMMENT(The Template Concept)
includefile(functiontemplates/intro)

lsect(TEMPFUNDEF)(Defining function templates)
includefile(functiontemplates/definitions)

    subsect(Considerations regarding template parameters)
    includefile(functiontemplates/considerations)

    lsubsect(AUTODECL)(Auto and decltype)
    includefile(functiontemplates/autodecl)

        subsubsect(declval)
        includefile(functiontemplates/declval)

    subsect(Late-specified return type)
    includefile(functiontemplates/alternate)

lsect(REFWRAP)(Passing arguments by reference (reference wrappers))
includefile(functiontemplates/referencewrappers)

sect(Using local and unnamed types as template arguments)
includefile(functiontemplates/local)

lsect(TEMPFUNARGS)(Template parameter deduction)
includefile(functiontemplates/argumentdeduction)

    subsect(Lvalue transformations)
    includefile(functiontemplates/lvalue)

    subsect(Qualification transformations)
    includefile(functiontemplates/qualifications)

    subsect(Transformation to a base class)
    includefile(functiontemplates/baseclass)

    lsubsect(PARDEDUCT)(The template parameter deduction algorithm)
    includefile(functiontemplates/algorithm)

    lsubsect(CONTRACTIONS)(Template type contractions)
    includefile(functiontemplates/contractions)

lsect(TEMPFUNDECL)(Declaring function templates)
includefile(functiontemplates/declarations)

    lsubsect(TEMPFUNEXDEC)(Instantiation declarations)
    includefile(functiontemplates/instantdecl)

lsect(TEMPFUNINST)(Instantiating function templates)
includefile(functiontemplates/instantiations)

    subsect(Instantiations: no `code bloat')
    includefile(functiontemplates/nocodebloat)

lsect(TEMPFUNEXPLICIT)(Using explicit template types)
includefile(functiontemplates/explicit)

sect(Overloading function templates)
includefile(functiontemplates/overloading)

    subsect(An example using overloaded function templates)
    includefile(functiontemplates/example)

    subsect(Ambiguities when overloading function templates)
    includefile(functiontemplates/ambiguities)

    subsect(Declaring overloaded function templates)
    includefile(functiontemplates/declaring)

lsect(SPECIALIZING)(Specializing templates for deviating types)
includefile(functiontemplates/specialization)

    subsect(Avoiding too many specializations)
    includefile(functiontemplates/avoiding)

    subsect(Declaring specializations)
    includefile(functiontemplates/declaringspec)

    subsect(Complications when using the insertion operator)
    includefile(functiontemplates/insertion)

lsect(STATICASSERT)(Static assertions)
includefile(functiontemplates/staticassertions)

lsect(NUMLIM)(Numeric limits)
includefile(functiontemplates/limits)

sect(Polymorphous wrappers for function objects)
includefile(functiontemplates/polymorphouswrappers)

lsect(NAMERESFUN)(Compiling template definitions and instantiations)
includefile(functiontemplates/nameresolution)

lsect(FUNCTIONSELECTION)(The function selection mechanism)
includefile(functiontemplates/selection)

    subsect(Determining the template type parameters)
    includefile(functiontemplates/determining)

lsect(SFINAE)(SFINAE: Substitution Failure Is Not An Error)
includefile(functiontemplates/sfinae)

lsect(IFCONST)(Conditional function definitions using `if constexpr')
includefile(functiontemplates/ifconst)

sect(Summary of the template declaration syntax)
includefile(functiontemplates/summary)

sect(Variables as templates (template variables))
includefile(functiontemplates/variables.yo)