Micro template library A library for building device drivers
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 

113 строки
6.8 KiB

  1. \hypertarget{group__integral}{}\section{operators}
  2. \label{group__integral}\index{operators@{operators}}
  3. \subsection*{Namespaces}
  4. \begin{DoxyCompactItemize}
  5. \item
  6. \mbox{\hyperlink{namespaceutl}{utl}}
  7. \begin{DoxyCompactList}\small\item\em S\+TL\textquotesingle{}s core language concepts. \end{DoxyCompactList}\item
  8. \mbox{\hyperlink{namespaceutl_1_1meta_1_1detail}{utl\+::meta\+::detail}}
  9. \end{DoxyCompactItemize}
  10. \subsection*{Classes}
  11. \begin{DoxyCompactItemize}
  12. \item
  13. struct \mbox{\hyperlink{structutl_1_1meta_1_1same__}{utl\+::meta\+::same\+\_\+$<$ \+\_\+\+T1, \+\_\+\+T2 $>$}}
  14. \item
  15. struct \mbox{\hyperlink{structutl_1_1meta_1_1same___3_01___tp_00_01___tp_01_4}{utl\+::meta\+::same\+\_\+$<$ \+\_\+\+Tp, \+\_\+\+Tp $>$}}
  16. \end{DoxyCompactItemize}
  17. \subsection*{Typedefs}
  18. \begin{DoxyCompactItemize}
  19. \item
  20. {\footnotesize template$<$bool B$>$ }\\using \mbox{\hyperlink{group__integral_ga7de987520bd0973f03ff8bab3152361a}{utl\+::meta\+::not\+\_\+c}} = \mbox{\hyperlink{namespaceutl_1_1meta_a0bec5828d2df0edfb4bc084773a438f6}{bool\+\_\+}}$<$!B $>$
  21. \begin{DoxyCompactList}\small\item\em Negate the {\itshape bool} constant parameter. \end{DoxyCompactList}\item
  22. {\footnotesize template$<$typename \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{group__integral_ga16df145331d3c62e624385c5949d90c4}{utl\+::meta\+::not\+\_\+}} = \mbox{\hyperlink{group__integral_ga7de987520bd0973f03ff8bab3152361a}{not\+\_\+c}}$<$ \+\_\+\+Tp\+::type\+::value $>$
  23. \begin{DoxyCompactList}\small\item\em not \end{DoxyCompactList}\end{DoxyCompactItemize}
  24. \begin{DoxyCompactItemize}
  25. \item
  26. {\footnotesize template$<$typename... \+\_\+\+Ts$>$ }\\using \mbox{\hyperlink{group__integral_gac43f400cc93d54f5f79892e618069d9b}{utl\+::meta\+::or\+\_\+}} = \mbox{\hyperlink{namespaceutl_1_1meta_aa5a37adba244ff4286f994111c4c02ea}{eval}}$<$ \mbox{\hyperlink{structutl_1_1meta_1_1detail_1_1__or__}{detail\+::\+\_\+or\+\_\+}}$<$ \+\_\+\+Ts... $>$ $>$
  27. \end{DoxyCompactItemize}
  28. \begin{DoxyCompactItemize}
  29. \item
  30. {\footnotesize template$<$typename... \+\_\+\+Ts$>$ }\\using \mbox{\hyperlink{group__integral_ga8e82f4758321e0e0b3705607f7d8e068}{utl\+::meta\+::and\+\_\+}} = \mbox{\hyperlink{namespaceutl_1_1meta_aa5a37adba244ff4286f994111c4c02ea}{eval}}$<$ \mbox{\hyperlink{structutl_1_1meta_1_1detail_1_1__and__}{detail\+::\+\_\+and\+\_\+}}$<$ \+\_\+\+Ts... $>$ $>$
  31. \end{DoxyCompactItemize}
  32. \begin{DoxyCompactItemize}
  33. \item
  34. {\footnotesize template$<$typename \+\_\+\+T1 , typename \+\_\+\+T2 $>$ }\\using \mbox{\hyperlink{group__integral_ga4dfaf054d891eb35d741662b077bbbd2}{utl\+::meta\+::not\+\_\+same\+\_\+}} = \mbox{\hyperlink{group__integral_ga16df145331d3c62e624385c5949d90c4}{not\+\_\+}}$<$ \mbox{\hyperlink{namespaceutl_1_1meta_aa5a37adba244ff4286f994111c4c02ea}{eval}}$<$ \mbox{\hyperlink{structutl_1_1meta_1_1same__}{same\+\_\+}}$<$ \+\_\+\+T1, \+\_\+\+T2 $>$ $>$$>$
  35. \end{DoxyCompactItemize}
  36. \subsection{Detailed Description}
  37. integral constant support header
  38. Type arithmetic and operators
  39. \subsection{Typedef Documentation}
  40. \mbox{\Hypertarget{group__integral_ga8e82f4758321e0e0b3705607f7d8e068}\label{group__integral_ga8e82f4758321e0e0b3705607f7d8e068}}
  41. \index{operators@{operators}!and\+\_\+@{and\+\_\+}}
  42. \index{and\+\_\+@{and\+\_\+}!operators@{operators}}
  43. \subsubsection{\texorpdfstring{and\+\_\+}{and\_}}
  44. {\footnotesize\ttfamily template$<$typename... \+\_\+\+Ts$>$ \\
  45. using \mbox{\hyperlink{group__integral_ga8e82f4758321e0e0b3705607f7d8e068}{utl\+::meta\+::and\+\_\+}} = typedef \mbox{\hyperlink{namespaceutl_1_1meta_aa5a37adba244ff4286f994111c4c02ea}{eval}}$<$\mbox{\hyperlink{structutl_1_1meta_1_1detail_1_1__and__}{detail\+::\+\_\+and\+\_\+}}$<$\+\_\+\+Ts...$>$ $>$}
  46. Definition at line 96 of file operations.\+h.
  47. \mbox{\Hypertarget{group__integral_ga16df145331d3c62e624385c5949d90c4}\label{group__integral_ga16df145331d3c62e624385c5949d90c4}}
  48. \index{operators@{operators}!not\+\_\+@{not\+\_\+}}
  49. \index{not\+\_\+@{not\+\_\+}!operators@{operators}}
  50. \subsubsection{\texorpdfstring{not\+\_\+}{not\_}}
  51. {\footnotesize\ttfamily template$<$typename \+\_\+\+Tp $>$ \\
  52. using \mbox{\hyperlink{group__integral_ga16df145331d3c62e624385c5949d90c4}{utl\+::meta\+::not\+\_\+}} = typedef \mbox{\hyperlink{group__integral_ga7de987520bd0973f03ff8bab3152361a}{not\+\_\+c}}$<$\+\_\+\+Tp\+::type\+::value$>$}
  53. not
  54. \begin{Desc}
  55. \item[Examples\+: ]\par
  56. \mbox{\hyperlink{_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example}{W\+:/\+Work/\+Software/\+Libraries/utl/include/utl/meta/typelist.\+h}}.\end{Desc}
  57. Definition at line 47 of file operations.\+h.
  58. \mbox{\Hypertarget{group__integral_ga7de987520bd0973f03ff8bab3152361a}\label{group__integral_ga7de987520bd0973f03ff8bab3152361a}}
  59. \index{operators@{operators}!not\+\_\+c@{not\+\_\+c}}
  60. \index{not\+\_\+c@{not\+\_\+c}!operators@{operators}}
  61. \subsubsection{\texorpdfstring{not\+\_\+c}{not\_c}}
  62. {\footnotesize\ttfamily template$<$bool B$>$ \\
  63. using \mbox{\hyperlink{group__integral_ga7de987520bd0973f03ff8bab3152361a}{utl\+::meta\+::not\+\_\+c}} = typedef \mbox{\hyperlink{namespaceutl_1_1meta_a0bec5828d2df0edfb4bc084773a438f6}{bool\+\_\+}}$<$!B$>$}
  64. Negate the {\itshape bool} constant parameter.
  65. Logical relation for types
  66. Definition at line 43 of file operations.\+h.
  67. \mbox{\Hypertarget{group__integral_ga4dfaf054d891eb35d741662b077bbbd2}\label{group__integral_ga4dfaf054d891eb35d741662b077bbbd2}}
  68. \index{operators@{operators}!not\+\_\+same\+\_\+@{not\+\_\+same\+\_\+}}
  69. \index{not\+\_\+same\+\_\+@{not\+\_\+same\+\_\+}!operators@{operators}}
  70. \subsubsection{\texorpdfstring{not\+\_\+same\+\_\+}{not\_same\_}}
  71. {\footnotesize\ttfamily template$<$typename \+\_\+\+T1 , typename \+\_\+\+T2 $>$ \\
  72. using \mbox{\hyperlink{group__integral_ga4dfaf054d891eb35d741662b077bbbd2}{utl\+::meta\+::not\+\_\+same\+\_\+}} = typedef \mbox{\hyperlink{group__integral_ga16df145331d3c62e624385c5949d90c4}{not\+\_\+}}$<$\mbox{\hyperlink{namespaceutl_1_1meta_aa5a37adba244ff4286f994111c4c02ea}{eval}}$<$\mbox{\hyperlink{structutl_1_1meta_1_1same__}{same\+\_\+}}$<$\+\_\+\+T1, \+\_\+\+T2$>$ $>$$>$}
  73. not same \begin{Desc}
  74. \item[Examples\+: ]\par
  75. \mbox{\hyperlink{_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example}{W\+:/\+Work/\+Software/\+Libraries/utl/include/utl/meta/invoke.\+h}}.\end{Desc}
  76. Definition at line 111 of file operations.\+h.
  77. \mbox{\Hypertarget{group__integral_gac43f400cc93d54f5f79892e618069d9b}\label{group__integral_gac43f400cc93d54f5f79892e618069d9b}}
  78. \index{operators@{operators}!or\+\_\+@{or\+\_\+}}
  79. \index{or\+\_\+@{or\+\_\+}!operators@{operators}}
  80. \subsubsection{\texorpdfstring{or\+\_\+}{or\_}}
  81. {\footnotesize\ttfamily template$<$typename... \+\_\+\+Ts$>$ \\
  82. using \mbox{\hyperlink{group__integral_gac43f400cc93d54f5f79892e618069d9b}{utl\+::meta\+::or\+\_\+}} = typedef \mbox{\hyperlink{namespaceutl_1_1meta_aa5a37adba244ff4286f994111c4c02ea}{eval}}$<$\mbox{\hyperlink{structutl_1_1meta_1_1detail_1_1__or__}{detail\+::\+\_\+or\+\_\+}}$<$\+\_\+\+Ts...$>$ $>$}
  83. Definition at line 70 of file operations.\+h.