\let\mypdfximage\pdfximage\def\pdfximage{\immediate\mypdfximage}\documentclass[twoside]{book}

%% moved from doxygen.sty due to workaround for LaTex 2019 version and unmaintained tabu package
\usepackage{ifthen}
\ifx\requestedLaTeXdate\undefined
\usepackage{array}
\else
\usepackage{array}[=2016-10-06]
\fi
%%
% Packages required by doxygen
\usepackage{fixltx2e}
\usepackage{doxygen}
\usepackage{graphicx}
\usepackage[utf8]{inputenc}
\usepackage{makeidx}
\PassOptionsToPackage{warn}{textcomp}
\usepackage{textcomp}
\usepackage[nointegrals]{wasysym}
\usepackage{ifxetex}

% Font selection
\usepackage[T1]{fontenc}
\usepackage[scaled=.90]{helvet}
\usepackage{courier}
\renewcommand{\familydefault}{\sfdefault}
\usepackage{sectsty}
\allsectionsfont{%
  \fontseries{bc}\selectfont%
  \color{darkgray}%
}
\renewcommand{\DoxyLabelFont}{%
  \fontseries{bc}\selectfont%
  \color{darkgray}%
}
\newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}}

% Arguments of doxygenemoji:
% 1) ':<text>:' form of the emoji, already "LaTeX"-escaped
% 2) file with the name of the emoji without the .png extension
% in case image exist use this otherwise use the ':<text>:' form
\newcommand{\doxygenemoji}[2]{%
  \IfFileExists{./#2.png}{\raisebox{-0.1em}{\includegraphics[height=0.9em]{./#2.png}}}{#1}%
}
% Page & text layout
\usepackage{geometry}
\geometry{%
  a4paper,%
  top=2.5cm,%
  bottom=2.5cm,%
  left=2.5cm,%
  right=2.5cm%
}
\tolerance=750
\hfuzz=15pt
\hbadness=750
\setlength{\emergencystretch}{15pt}
\setlength{\parindent}{0cm}
\newcommand{\doxynormalparskip}{\setlength{\parskip}{3ex plus 2ex minus 2ex}}
\newcommand{\doxytocparskip}{\setlength{\parskip}{1ex plus 0ex minus 0ex}}
\doxynormalparskip
\makeatletter
\renewcommand{\paragraph}{%
  \@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{%
    \normalfont\normalsize\bfseries\SS@parafont%
  }%
}
\renewcommand{\subparagraph}{%
  \@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{%
    \normalfont\normalsize\bfseries\SS@subparafont%
  }%
}
\makeatother

\makeatletter
\newcommand\hrulefilll{\leavevmode\leaders\hrule\hskip 0pt plus 1filll\kern\z@}
\makeatother

% Headers & footers
\usepackage{fancyhdr}
\pagestyle{fancyplain}
\renewcommand{\footrulewidth}{0.4pt}
%
\fancypagestyle{fancyplain}{
\fancyhf{}
\fancyhead[LE, RO]{\bfseries\thepage}
\fancyhead[LO]{\bfseries\rightmark}
\fancyhead[RE]{\bfseries\leftmark}
\fancyfoot[LO, RE]{\bfseries\scriptsize Generated by Doxygen }
}
%
\fancypagestyle{plain}{
\fancyhf{}
\fancyfoot[LO, RE]{\bfseries\scriptsize Generated by Doxygen }
\renewcommand{\headrulewidth}{0pt}}
%
\pagestyle{fancyplain}
%
\renewcommand{\chaptermark}[1]{%
  \markboth{#1}{}%
}
\renewcommand{\sectionmark}[1]{%
  \markright{\thesection\ #1}%
}

% Indices & bibliography
\usepackage{natbib}
\usepackage[titles]{tocloft}
\setcounter{tocdepth}{3}
\setcounter{secnumdepth}{5}
\makeindex

\usepackage{newunicodechar}
  \newunicodechar{⁻}{${}^{-}$}% Superscript minus
  \newunicodechar{²}{${}^{2}$}% Superscript two
  \newunicodechar{³}{${}^{3}$}% Superscript three

% Hyperlinks (required, but should be loaded last)
\ifpdf
  \usepackage[pdftex,pagebackref=true]{hyperref}
\else
  \ifxetex
    \usepackage[pagebackref=true]{hyperref}
  \else
    \usepackage[ps2pdf,pagebackref=true]{hyperref}
  \fi
\fi

\hypersetup{%
  colorlinks=true,%
  linkcolor=blue,%
  citecolor=blue,%
  unicode%
}

% Custom commands
\newcommand{\clearemptydoublepage}{%
  \newpage{\pagestyle{empty}\cleardoublepage}%
}

\usepackage{caption}
\captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top}

\usepackage{etoc}
\etocsettocstyle{\doxytocparskip}{\doxynormalparskip}
\renewcommand{\numberline}[1]{#1~}
%===== C O N T E N T S =====

\begin{document}
\raggedbottom

% Titlepage & ToC
\hypersetup{pageanchor=false,
             bookmarksnumbered=true,
             pdfencoding=unicode
            }
\pagenumbering{alph}
\begin{titlepage}
\vspace*{7cm}
\begin{center}%
{\Large Qore Programming Language Reference Manual \\[1ex]\large 1.\+7.\+0 }\\
\vspace*{1cm}
{\large Generated by Doxygen 1.9.1}\\
\end{center}
\end{titlepage}
\clearemptydoublepage
\pagenumbering{roman}
\tableofcontents
\clearemptydoublepage
\pagenumbering{arabic}
\hypersetup{pageanchor=true}

%--- Begin generated contents ---
\chapter{Qore Language Reference Manual}
\label{index}\hypertarget{index}{}\input{index}
\chapter{Introduction}
\label{qore_intro}
\Hypertarget{qore_intro}
\input{qore_intro}
\chapter{Language Overview}
\label{desc_overview}
\Hypertarget{desc_overview}
\input{desc_overview}
\chapter{Environment Variables}
\label{environment_variables}
\Hypertarget{environment_variables}
\input{environment_variables}
\chapter{Conditional Parsing and Parse Defines}
\label{conditional_parsing}
\Hypertarget{conditional_parsing}
\input{conditional_parsing}
\chapter{Module Description}
\label{qore_modules}
\Hypertarget{qore_modules}
\input{qore_modules}
\chapter{Include Files}
\label{include_files}
\Hypertarget{include_files}
\input{include_files}
\chapter{Identifiers}
\label{identifiers}
\Hypertarget{identifiers}
\input{identifiers}
\chapter{Comments}
\label{comments}
\Hypertarget{comments}
\input{comments}
\chapter{Variables}
\label{variables}
\Hypertarget{variables}
\input{variables}
\chapter{Basic Data Types}
\label{basic_data_types}
\Hypertarget{basic_data_types}
\input{basic_data_types}
\chapter{Container Data Types}
\label{container_data_types}
\Hypertarget{container_data_types}
\input{container_data_types}
\chapter{Code Data Types}
\label{code_data_types}
\Hypertarget{code_data_types}
\input{code_data_types}
\chapter{Data Type Declarations and Restrictions}
\label{data_type_declarations}
\Hypertarget{data_type_declarations}
\input{data_type_declarations}
\chapter{References}
\label{lvalue_references}
\Hypertarget{lvalue_references}
\input{lvalue_references}
\chapter{Overloading}
\label{overloading}
\Hypertarget{overloading}
\input{overloading}
\chapter{Time Zone Handling}
\label{time_zones}
\Hypertarget{time_zones}
\input{time_zones}
\chapter{Strings and Character Encoding}
\label{character_encoding}
\Hypertarget{character_encoding}
\input{character_encoding}
\chapter{Expressions}
\label{expressions}
\Hypertarget{expressions}
\input{expressions}
\chapter{Operators}
\label{operators}
\Hypertarget{operators}
\input{operators}
\chapter{Regular Expressions}
\label{qore_regex}
\Hypertarget{qore_regex}
\input{qore_regex}
\chapter{Date/\+Time Arithmetic}
\label{date_time_arithmetic}
\Hypertarget{date_time_arithmetic}
\input{date_time_arithmetic}
\chapter{Statements}
\label{statements}
\Hypertarget{statements}
\input{statements}
\chapter{Functions}
\label{qore_functions}
\Hypertarget{qore_functions}
\input{qore_functions}
\chapter{Code Flags}
\label{code_flags}
\Hypertarget{code_flags}
\input{code_flags}
\chapter{Namespaces}
\label{qore_namespaces}
\Hypertarget{qore_namespaces}
\input{qore_namespaces}
\chapter{Constants}
\label{constants}
\Hypertarget{constants}
\input{constants}
\chapter{Classes}
\label{qore_classes}
\Hypertarget{qore_classes}
\input{qore_classes}
\chapter{Hashdecl\+: Type-\/\+Safe Hash Declarations}
\label{hashdecl}
\Hypertarget{hashdecl}
\input{hashdecl}
\chapter{Threading}
\label{threading}
\Hypertarget{threading}
\input{threading}
\chapter{Exception Handling}
\label{exception_handling}
\Hypertarget{exception_handling}
\input{exception_handling}
\chapter{Signal Handling}
\label{signal_handling}
\Hypertarget{signal_handling}
\input{signal_handling}
\chapter{I/O Event Handling}
\label{event_handling}
\Hypertarget{event_handling}
\input{event_handling}
\chapter{qore Executable Command-\/\+Line Processing}
\label{command_line_processing}
\Hypertarget{command_line_processing}
\input{command_line_processing}
\chapter{Parse Directives}
\label{parse_directives}
\Hypertarget{parse_directives}
\input{parse_directives}
\chapter{Warnings}
\label{warnings}
\Hypertarget{warnings}
\input{warnings}
\chapter{Keywords}
\label{keywords}
\Hypertarget{keywords}
\input{keywords}
\chapter{Release Notes}
\label{release_notes}
\Hypertarget{release_notes}
\input{release_notes}
\chapter{Bug List}
\label{bug}
\Hypertarget{bug}
\input{bug}
\chapter{Deprecated List}
\label{deprecated}
\Hypertarget{deprecated}
\input{deprecated}
\chapter{Module Index}
\input{modules}
\chapter{Namespace Index}
\input{namespaces}
\chapter{Hierarchical Index}
\input{hierarchy}
\chapter{Class Index}
\input{annotated}
\chapter{Module Documentation}
\input{group__range__functions}
\input{group__database__driver__constants}
\input{group__dbi__capabilities}
\input{group__file__stat__constants}
\input{group__file__open__constants}
\input{group__file__locking__constants}
\input{group__file__seek__constants}
\input{group__import__visibility__constants}
\input{group__functional__domain__constants}
\input{group__parse__options}
\input{group__warning__constants}
\input{group__debug__rs__options}
\input{group__debug__flow__options}
\input{group__breakpoint__policy__options}
\input{group__socket__poll__constants}
\input{group__ssl__mode__constants}
\input{group__x509__verification__constants}
\input{group__network__address__family__constants}
\input{group__network__address__information__constants}
\input{group__protocol__constants}
\input{group__socket__type__constants}
\input{group__tattr__local__mode__constants}
\input{group__tattr__control__mode__constants}
\input{group__tattr__output__mode__constants}
\input{group__tattr__input__mode__constants}
\input{group__tattr__control__character__constants}
\input{group__tattr__term__setting__constants}
\input{group___buffered_stream_reader}
\input{group__signal__handling__functions}
\input{group__misc__functions}
\input{group__parse__url__options}
\input{group___string_concat_encoding}
\input{group___string_concat_decoding}
\input{group__signal__constants}
\input{group__compresssion__functions}
\input{group__compression__constants}
\input{group__compression__transformations}
\input{group__threading__functions}
\input{group__cryptographic__functions}
\input{group__digest__functions}
\input{group__hmac__functions}
\input{group__crypto__transformations}
\input{group__cryptographic__constants}
\input{group__digest__algorithms}
\input{group__library__functions}
\input{group__library__option__constants}
\input{group__filesystem__functions}
\input{group__string__functions}
\input{group__regex__constants}
\input{group__date__and__time__functions}
\input{group__math__functions}
\input{group__math__constants}
\input{group__list__functions}
\input{group__type__conversion__functions}
\input{group__string__type__constants}
\input{group__pwd__functions}
\input{group__user__and__group__functions}
\input{group__object__functions}
\input{group__env__functions}
\input{group__old__dbi__functions}
\input{group__dbi__functions}
\input{group__sql__constants}
\input{group__context__functions}
\input{group__option__constants}
\input{group__error__constants}
\input{group__type__code__constants}
\input{group__type__code__map__constants}
\input{group__boolean__constants}
\input{group__null__and__nothing__constants}
\input{group__exception__type__constants}
\input{group__call__type__constants}
\input{group__system__and__build__constants}
\input{group__event__source__constants}
\input{group__event__map__constants}
\input{group__event__constants}
\input{group__io__constants}
\input{group__number__formatting__constants}
\input{group__number__string__formatting__constants}
\chapter{Namespace Documentation}
\input{namespace_qore}
\input{namespace_qore_1_1_err}
\input{namespace_qore_1_1_option}
\input{namespace_qore_1_1_s_q_l}
\input{namespace_qore_1_1_thread}
\input{namespace_qore_1_1_type}
\chapter{Class Documentation}
\input{class_qore_1_1_abstract_bidirectional_iterator}
\input{class_qore_1_1_s_q_l_1_1_abstract_datasource}
\input{class_qore_1_1_abstract_iterator}
\input{class_qore_1_1_abstract_line_iterator}
\input{class_qore_1_1_abstract_quantified_bidirectional_iterator}
\input{class_qore_1_1_abstract_quantified_iterator}
\input{class_qore_1_1_thread_1_1_abstract_smart_lock}
\input{class_qore_1_1_s_q_l_1_1_abstract_s_q_l_statement}
\input{class_qore_1_1_thread_1_1_abstract_thread_resource}
\input{class_qore_1_1_thread_1_1_auto_gate}
\input{class_qore_1_1_thread_1_1_auto_lock}
\input{class_qore_1_1_thread_1_1_auto_read_lock}
\input{class_qore_1_1_thread_1_1_auto_write_lock}
\input{class_qore_1_1_binary_input_stream}
\input{class_qore_1_1_binary_output_stream}
\input{class_qore_1_1_breakpoint}
\input{class_qore_1_1_buffered_stream_reader}
\input{struct_qore_1_1_call_stack_info}
\input{class_qore_1_1_thread_1_1_condition}
\input{class_qore_1_1_thread_1_1_counter}
\input{class_qore_1_1_data_line_iterator}
\input{class_qore_1_1_s_q_l_1_1_datasource}
\input{class_qore_1_1_s_q_l_1_1_datasource_pool}
\input{struct_qore_1_1_date_time_info}
\input{class_qore_1_1_debug_program}
\input{class_qore_1_1_dir}
\input{struct_qore_1_1_dir_stat_info}
\input{class_qore_1_1_encoding_conversion_input_stream}
\input{class_qore_1_1_encoding_conversion_output_stream}
\input{struct_qore_1_1_exception_info}
\input{class_qore_1_1_expression}
\input{class_qore_1_1_file}
\input{class_qore_1_1_file_input_stream}
\input{class_qore_1_1_file_line_iterator}
\input{class_qore_1_1_file_output_stream}
\input{struct_qore_1_1_filesystem_info}
\input{class_qore_1_1_ftp_client}
\input{struct_qore_1_1_ftp_response_info}
\input{class_qore_1_1_thread_1_1_gate}
\input{class_qore_1_1_get_opt}
\input{class_qore_1_1_hash_iterator}
\input{class_qore_1_1_hash_key_iterator}
\input{class_qore_1_1_hash_key_reverse_iterator}
\input{class_qore_1_1_hash_list_iterator}
\input{class_qore_1_1_hash_list_reverse_iterator}
\input{class_qore_1_1_hash_pair_iterator}
\input{class_qore_1_1_hash_pair_reverse_iterator}
\input{class_qore_1_1_hash_reverse_iterator}
\input{struct_qore_1_1_hash_serialization_info}
\input{class_qore_1_1_h_t_t_p_client}
\input{struct_qore_1_1_indexed_object_serialization_info}
\input{class_qore_1_1_input_stream}
\input{class_qore_1_1_input_stream_line_iterator}
\input{struct_qore_1_1_iso_week_info}
\input{class_qore_1_1_list_hash_iterator}
\input{class_qore_1_1_list_hash_reverse_iterator}
\input{class_qore_1_1_list_iterator}
\input{class_qore_1_1_list_reverse_iterator}
\input{struct_qore_1_1_list_serialization_info}
\input{class_qore_1_1_thread_1_1_mutex}
\input{struct_qore_1_1_net_if_info}
\input{class_qore_1_1_object_iterator}
\input{class_qore_1_1_object_key_iterator}
\input{class_qore_1_1_object_key_reverse_iterator}
\input{class_qore_1_1_object_pair_iterator}
\input{class_qore_1_1_object_pair_reverse_iterator}
\input{class_qore_1_1_object_reverse_iterator}
\input{struct_qore_1_1_object_serialization_info}
\input{class_qore_1_1_output_stream}
\input{class_qore_1_1_pipe_input_stream}
\input{class_qore_1_1_pipe_output_stream}
\input{class_qore_1_1_program}
\input{class_qore_1_1_program_control}
\input{class_qore_1_1_thread_1_1_queue}
\input{class_qore_1_1_range_iterator}
\input{class_qore_1_1_read_only_file}
\input{class_qore_1_1_thread_1_1_r_w_lock}
\input{class_qore_1_1_thread_1_1_sequence}
\input{class_qore_1_1_serializable}
\input{struct_qore_1_1_serialization_info}
\input{class_qore_1_1_single_value_iterator}
\input{class_qore_1_1_socket}
\input{struct_qore_1_1_socket_poll_info}
\input{struct_qore_1_1_source_location_info}
\input{class_qore_1_1_s_q_l_1_1_s_q_l_statement}
\input{class_qore_1_1_s_s_l_certificate}
\input{class_qore_1_1_s_s_l_private_key}
\input{struct_qore_1_1_statement_info}
\input{struct_qore_1_1_stat_info}
\input{class_qore_1_1_stderr_output_stream}
\input{class_qore_1_1_stdout_output_stream}
\input{class_qore_1_1_stream_base}
\input{class_qore_1_1_stream_pipe}
\input{class_qore_1_1_stream_reader}
\input{class_qore_1_1_stream_writer}
\input{class_qore_1_1_string_input_stream}
\input{class_qore_1_1_string_output_stream}
\input{class_qore_1_1_term_i_o_s}
\input{class_qore_1_1_thread_1_1_thread_pool}
\input{class_qore_1_1_time_zone}
\input{class_qore_1_1_transform}
\input{class_qore_1_1_transform_input_stream}
\input{class_qore_1_1_transform_output_stream}
\input{class_qore_1_1_tree_map}
\input{struct_qore_1_1_url_info}
\input{class_qore_1_1zzz8binaryzzz9}
\input{class_qore_1_1zzz8boolzzz9}
\input{class_qore_1_1zzz8callrefzzz9}
\input{class_qore_1_1zzz8closurezzz9}
\input{class_qore_1_1zzz8datezzz9}
\input{class_qore_1_1zzz8floatzzz9}
\input{class_qore_1_1zzz8hashzzz9}
\input{class_qore_1_1zzz8intzzz9}
\input{class_qore_1_1zzz8listzzz9}
\input{class_qore_1_1zzz8nothingzzz9}
\input{class_qore_1_1zzz8numberzzz9}
\input{class_qore_1_1zzz8objectzzz9}
\input{class_qore_1_1zzz8stringzzz9}
\input{class_qore_1_1zzz8valuezzz9}
%--- End generated contents ---

% Index
\backmatter
\newpage
\phantomsection
\clearemptydoublepage
\addcontentsline{toc}{chapter}{\indexname}
\printindex

\end{document}
