C++ Library Extensions 2022.12.09
To help learn modern C++ programming
004-preliminary_debugging.cpp File Reference
#include <tpf_output.hpp>
Include dependency graph for 004-preliminary_debugging.cpp:

Go to the source code of this file.

Macros

#define VeryUglyName_SquareFoldExpression(first, ...)   divide_fold_exression_with_pack_expansion(first, __VA_ARGS__)
 

Functions

template<typename Type >
Type increment (Type arg)
 
template<typename Type , typename... Types>
void example_for_template_parameter_pack_expansion (Type arg, Types... args)
 
template<typename Type >
void print_out_parameter_packs (Type arg)
 
template<typename Type , typename... Types>
void print_out_parameter_packs (Type arg, Types... args)
 
template<typename Type , typename... Types>
void example_of_if_constexpr (Type arg, Types... args)
 
template<typename Type >
Type square_me (Type arg)
 
template<typename Type , typename... Types>
void example_of_if_constexpr_with_pack_expansion (Type arg, Types... args)
 
template<typename Type , typename... Types>
void example_of_pack_expansion (Type arg, Types... args)
 
template<typename Type , typename... Types>
Type divide_using_fold_exression (Type first, Types... args)
 
void example_fold_expression ()
 
template<typename Type , typename... Types>
Type divide_using_fold_exression_with_pack_expansion (Type first, Types... args)
 
void example_with_pack_expansion_using_fold_exression ()
 
template<typename Type , typename... Types>
void divide_fold_exression_with_pack_expansion (Type first, Types... args)
 
int main ()
 

Variables

tpf::sstream stream
 
auto nl = tpf::nl
 
auto flush = tpf::flush
 
auto endl = tpf::endl
 

Macro Definition Documentation

◆ VeryUglyName_SquareFoldExpression

#define VeryUglyName_SquareFoldExpression (   first,
  ... 
)    divide_fold_exression_with_pack_expansion(first, __VA_ARGS__)

Definition at line 182 of file 004-preliminary_debugging.cpp.

Function Documentation

◆ divide_fold_exression_with_pack_expansion()

template<typename Type , typename... Types>
void divide_fold_exression_with_pack_expansion ( Type  first,
Types...  args 
)

Definition at line 170 of file 004-preliminary_debugging.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ divide_using_fold_exression()

template<typename Type , typename... Types>
Type divide_using_fold_exression ( Type  first,
Types...  args 
)

Definition at line 133 of file 004-preliminary_debugging.cpp.

Here is the caller graph for this function:

◆ divide_using_fold_exression_with_pack_expansion()

template<typename Type , typename... Types>
Type divide_using_fold_exression_with_pack_expansion ( Type  first,
Types...  args 
)

Definition at line 151 of file 004-preliminary_debugging.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ example_fold_expression()

void example_fold_expression ( )

Definition at line 142 of file 004-preliminary_debugging.cpp.

Here is the call graph for this function:

◆ example_for_template_parameter_pack_expansion()

template<typename Type , typename... Types>
void example_for_template_parameter_pack_expansion ( Type  arg,
Types...  args 
)

Definition at line 18 of file 004-preliminary_debugging.cpp.

Here is the call graph for this function:

◆ example_of_if_constexpr()

template<typename Type , typename... Types>
void example_of_if_constexpr ( Type  arg,
Types...  args 
)

Definition at line 79 of file 004-preliminary_debugging.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ example_of_if_constexpr_with_pack_expansion()

template<typename Type , typename... Types>
void example_of_if_constexpr_with_pack_expansion ( Type  arg,
Types...  args 
)

Definition at line 105 of file 004-preliminary_debugging.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ example_of_pack_expansion()

template<typename Type , typename... Types>
void example_of_pack_expansion ( Type  arg,
Types...  args 
)

Definition at line 122 of file 004-preliminary_debugging.cpp.

Here is the call graph for this function:

◆ example_with_pack_expansion_using_fold_exression()

void example_with_pack_expansion_using_fold_exression ( )

Definition at line 161 of file 004-preliminary_debugging.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ increment()

template<typename Type >
Type increment ( Type  arg)

Definition at line 12 of file 004-preliminary_debugging.cpp.

Here is the caller graph for this function:

◆ main()

int main ( )

Definition at line 184 of file 004-preliminary_debugging.cpp.

Here is the call graph for this function:

◆ print_out_parameter_packs() [1/2]

template<typename Type >
void print_out_parameter_packs ( Type  arg)

Definition at line 68 of file 004-preliminary_debugging.cpp.

Here is the caller graph for this function:

◆ print_out_parameter_packs() [2/2]

template<typename Type , typename... Types>
void print_out_parameter_packs ( Type  arg,
Types...  args 
)

Definition at line 45 of file 004-preliminary_debugging.cpp.

Here is the call graph for this function:

◆ square_me()

template<typename Type >
Type square_me ( Type  arg)

Definition at line 99 of file 004-preliminary_debugging.cpp.

Here is the caller graph for this function:

Variable Documentation

◆ endl

auto endl = tpf::endl

Definition at line 9 of file 004-preliminary_debugging.cpp.

◆ flush

auto flush = tpf::flush

Definition at line 8 of file 004-preliminary_debugging.cpp.

◆ nl

auto nl = tpf::nl

Definition at line 7 of file 004-preliminary_debugging.cpp.

◆ stream

tpf::sstream stream

Definition at line 6 of file 004-preliminary_debugging.cpp.