\documentclass{report}
\usepackage{hyperref}
% WARNING: THIS SHOULD BE MODIFIED DEPENDING ON THE LETTER/A4 SIZE
\oddsidemargin 0cm
\evensidemargin 0cm
\marginparsep 0cm
\marginparwidth 0cm
\parindent 0cm
\setlength{\textwidth}{\paperwidth}
\addtolength{\textwidth}{-2in}


% Conditional define to determine if pdf output is used
\newif\ifpdf
\ifx\pdfoutput\undefined
\pdffalse
\else
\pdfoutput=1
\pdftrue
\fi

\ifpdf
  \usepackage[pdftex]{graphicx}
\else
  \usepackage[dvips]{graphicx}
\fi

% Write Document information for pdflatex/pdftex
\ifpdf
\pdfinfo{
 /Author     (Pasdoc)
 /Title      ()
}
\fi


% definitons for warning and note tag
\usepackage[most]{tcolorbox}
\newtcolorbox{tcbwarning}{
 breakable,
 enhanced jigsaw,
 top=0pt,
 bottom=0pt,
 titlerule=0pt,
 bottomtitle=0pt,
 rightrule=0pt,
 toprule=0pt,
 bottomrule=0pt,
 colback=white,
 arc=0pt,
 outer arc=0pt,
 title style={white},
 fonttitle=\color{black}\bfseries,
 left=8pt,
 colframe=red,
 title={Warning:},
}
\newtcolorbox{tcbnote}{
 breakable,
 enhanced jigsaw,
 top=0pt,
 bottom=0pt,
 titlerule=0pt,
 bottomtitle=0pt,
 rightrule=0pt,
 toprule=0pt,
 bottomrule=0pt,
 colback=white,
 arc=0pt,
 outer arc=0pt,
 title style={white},
 fonttitle=\color{black}\bfseries,
 left=8pt,
 colframe=yellow,
 title={Note:},
}

\begin{document}
\label{toc}\tableofcontents
\newpage
% special variable used for calculating some widths.
\newlength{\tmplength}
\chapter{Unit ok{\_}link{\_}tag{\_}overloads}
\label{ok_link_tag_overloads}
\index{ok{\_}link{\_}tag{\_}overloads}
\section{Overview}
\begin{description}
\item[\texttt{\begin{ttfamily}TLinkHolder\end{ttfamily} Class}]\begin{itemize}
\item \begin{ttfamily}TOverloadedMethods.Foo\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedMethods-Foo})
\item \begin{ttfamily}TOverloadedMethods.Foo(Integer,Boolean)\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedMethods-Foo})
\item \begin{ttfamily}TOverloadedMethods.Foo(const)\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedMethods-Foo})
\item \begin{ttfamily}TOverloadedMethods.Bar\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedMethods-Bar})
\item \begin{ttfamily}TOverloadedMethods.Bar(integer, boolean)\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedMethods-Bar})
\item \begin{ttfamily}TOverloadedMethods.Bar(String)\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedMethods-Bar})
\item \begin{ttfamily}TOverloadedMethods.Bar(const)\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedMethods-Bar})
\item \begin{ttfamily}top level func, accepts string\end{ttfamily}(\ref{ok_link_tag_overloads-TopLevelFunc})
\item \begin{ttfamily}top level func, accepts int\end{ttfamily}(\ref{ok_link_tag_overloads-TopLevelFunc})
\end{itemize}
\item[\texttt{\begin{ttfamily}TOverloadedBase\end{ttfamily} Class}]
\item[\texttt{\begin{ttfamily}TOverloadedMethods\end{ttfamily} Class}]\begin{ttfamily}TLinkHolder\end{ttfamily}(\ref{ok_link_tag_overloads.TLinkHolder})
\end{description}
\begin{description}
\item[\texttt{TopLevelFunc}]
\item[\texttt{TopLevelFunc}]
\end{description}
\section{Classes, Interfaces, Objects and Records}
\ifpdf
\subsection*{\large{\textbf{TLinkHolder Class}}\normalsize\hspace{1ex}\hrulefill}
\else
\subsection*{TLinkHolder Class}
\fi
\label{ok_link_tag_overloads.TLinkHolder}
\index{TLinkHolder}
\subsubsection*{\large{\textbf{Hierarchy}}\normalsize\hspace{1ex}\hfill}
TLinkHolder {$>$} TObject
\subsubsection*{\large{\textbf{Description}}\normalsize\hspace{1ex}\hfill}
\begin{itemize}
\item \begin{ttfamily}TOverloadedMethods.Foo\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedMethods-Foo})
\item \begin{ttfamily}TOverloadedMethods.Foo(Integer,Boolean)\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedMethods-Foo})
\item \begin{ttfamily}TOverloadedMethods.Foo(const)\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedMethods-Foo})
\item \begin{ttfamily}TOverloadedMethods.Bar\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedMethods-Bar})
\item \begin{ttfamily}TOverloadedMethods.Bar(integer, boolean)\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedMethods-Bar})
\item \begin{ttfamily}TOverloadedMethods.Bar(String)\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedMethods-Bar})
\item \begin{ttfamily}TOverloadedMethods.Bar(const)\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedMethods-Bar})
\item \begin{ttfamily}top level func, accepts string\end{ttfamily}(\ref{ok_link_tag_overloads-TopLevelFunc})
\item \begin{ttfamily}top level func, accepts int\end{ttfamily}(\ref{ok_link_tag_overloads-TopLevelFunc})
\end{itemize}\ifpdf
\subsection*{\large{\textbf{TOverloadedBase Class}}\normalsize\hspace{1ex}\hrulefill}
\else
\subsection*{TOverloadedBase Class}
\fi
\label{ok_link_tag_overloads.TOverloadedBase}
\index{TOverloadedBase}
\subsubsection*{\large{\textbf{Hierarchy}}\normalsize\hspace{1ex}\hfill}
TOverloadedBase {$>$} TObject
%%%%Description
\subsubsection*{\large{\textbf{Methods}}\normalsize\hspace{1ex}\hfill}
\paragraph*{Bar}\hspace*{\fill}

\label{ok_link_tag_overloads.TOverloadedBase-Bar}
\index{Bar}
\begin{list}{}{
\settowidth{\tmplength}{\textbf{Description}}
\setlength{\itemindent}{0cm}
\setlength{\listparindent}{0cm}
\setlength{\leftmargin}{\evensidemargin}
\addtolength{\leftmargin}{\tmplength}
\settowidth{\labelsep}{X}
\addtolength{\leftmargin}{\labelsep}
\setlength{\labelwidth}{\tmplength}
}
\item[\textbf{Declaration}\hfill]
\ifpdf
\begin{flushleft}
\fi
\begin{ttfamily}
public procedure Bar(MyInt: Integer; MyBool: Boolean); virtual;\end{ttfamily}

\ifpdf
\end{flushleft}
\fi

\par
\item[\textbf{Description}]
\begin{ttfamily}TOverloadedBase\end{ttfamily}.\begin{ttfamily}Bar\end{ttfamily}

\end{list}
\ifpdf
\subsection*{\large{\textbf{TOverloadedMethods Class}}\normalsize\hspace{1ex}\hrulefill}
\else
\subsection*{TOverloadedMethods Class}
\fi
\label{ok_link_tag_overloads.TOverloadedMethods}
\index{TOverloadedMethods}
\subsubsection*{\large{\textbf{Hierarchy}}\normalsize\hspace{1ex}\hfill}
TOverloadedMethods {$>$} \begin{ttfamily}TOverloadedBase\end{ttfamily}(\ref{ok_link_tag_overloads.TOverloadedBase}) {$>$} 
TObject
\subsubsection*{\large{\textbf{Description}}\normalsize\hspace{1ex}\hfill}
\begin{ttfamily}TLinkHolder\end{ttfamily}(\ref{ok_link_tag_overloads.TLinkHolder})\subsubsection*{\large{\textbf{Methods}}\normalsize\hspace{1ex}\hfill}
\paragraph*{Foo}\hspace*{\fill}

\label{ok_link_tag_overloads.TOverloadedMethods-Foo}
\index{Foo}
\begin{list}{}{
\settowidth{\tmplength}{\textbf{Description}}
\setlength{\itemindent}{0cm}
\setlength{\listparindent}{0cm}
\setlength{\leftmargin}{\evensidemargin}
\addtolength{\leftmargin}{\tmplength}
\settowidth{\labelsep}{X}
\addtolength{\leftmargin}{\labelsep}
\setlength{\labelwidth}{\tmplength}
}
\item[\textbf{Declaration}\hfill]
\ifpdf
\begin{flushleft}
\fi
\begin{ttfamily}
public procedure Foo(MyInt: IntEGEr); overload;\end{ttfamily}

\ifpdf
\end{flushleft}
\fi

\end{list}
\paragraph*{Foo}\hspace*{\fill}

\label{ok_link_tag_overloads.TOverloadedMethods-Foo}
\index{Foo}
\begin{list}{}{
\settowidth{\tmplength}{\textbf{Description}}
\setlength{\itemindent}{0cm}
\setlength{\listparindent}{0cm}
\setlength{\leftmargin}{\evensidemargin}
\addtolength{\leftmargin}{\tmplength}
\settowidth{\labelsep}{X}
\addtolength{\leftmargin}{\labelsep}
\setlength{\labelwidth}{\tmplength}
}
\item[\textbf{Declaration}\hfill]
\ifpdf
\begin{flushleft}
\fi
\begin{ttfamily}
public procedure Foo(MyInt: Integer; MyBool: Boolean); overload;\end{ttfamily}

\ifpdf
\end{flushleft}
\fi

\end{list}
\paragraph*{Foo}\hspace*{\fill}

\label{ok_link_tag_overloads.TOverloadedMethods-Foo}
\index{Foo}
\begin{list}{}{
\settowidth{\tmplength}{\textbf{Description}}
\setlength{\itemindent}{0cm}
\setlength{\listparindent}{0cm}
\setlength{\leftmargin}{\evensidemargin}
\addtolength{\leftmargin}{\tmplength}
\settowidth{\labelsep}{X}
\addtolength{\leftmargin}{\labelsep}
\setlength{\labelwidth}{\tmplength}
}
\item[\textbf{Declaration}\hfill]
\ifpdf
\begin{flushleft}
\fi
\begin{ttfamily}
public procedure Foo; overload;\end{ttfamily}

\ifpdf
\end{flushleft}
\fi

\end{list}
\paragraph*{Foo}\hspace*{\fill}

\label{ok_link_tag_overloads.TOverloadedMethods-Foo}
\index{Foo}
\begin{list}{}{
\settowidth{\tmplength}{\textbf{Description}}
\setlength{\itemindent}{0cm}
\setlength{\listparindent}{0cm}
\setlength{\leftmargin}{\evensidemargin}
\addtolength{\leftmargin}{\tmplength}
\settowidth{\labelsep}{X}
\addtolength{\leftmargin}{\labelsep}
\setlength{\labelwidth}{\tmplength}
}
\item[\textbf{Declaration}\hfill]
\ifpdf
\begin{flushleft}
\fi
\begin{ttfamily}
public procedure Foo(MyStr: string); overload;\end{ttfamily}

\ifpdf
\end{flushleft}
\fi

\end{list}
\paragraph*{Foo}\hspace*{\fill}

\label{ok_link_tag_overloads.TOverloadedMethods-Foo}
\index{Foo}
\begin{list}{}{
\settowidth{\tmplength}{\textbf{Description}}
\setlength{\itemindent}{0cm}
\setlength{\listparindent}{0cm}
\setlength{\leftmargin}{\evensidemargin}
\addtolength{\leftmargin}{\tmplength}
\settowidth{\labelsep}{X}
\addtolength{\leftmargin}{\labelsep}
\setlength{\labelwidth}{\tmplength}
}
\item[\textbf{Declaration}\hfill]
\ifpdf
\begin{flushleft}
\fi
\begin{ttfamily}
public procedure Foo(const MyStr); overload;\end{ttfamily}

\ifpdf
\end{flushleft}
\fi

\end{list}
\paragraph*{Foo}\hspace*{\fill}

\label{ok_link_tag_overloads.TOverloadedMethods-Foo}
\index{Foo}
\begin{list}{}{
\settowidth{\tmplength}{\textbf{Description}}
\setlength{\itemindent}{0cm}
\setlength{\listparindent}{0cm}
\setlength{\leftmargin}{\evensidemargin}
\addtolength{\leftmargin}{\tmplength}
\settowidth{\labelsep}{X}
\addtolength{\leftmargin}{\labelsep}
\setlength{\labelwidth}{\tmplength}
}
\item[\textbf{Declaration}\hfill]
\ifpdf
\begin{flushleft}
\fi
\begin{ttfamily}
public procedure Foo(const MyStr, MyOtherStr: STRING); overload;\end{ttfamily}

\ifpdf
\end{flushleft}
\fi

\end{list}
\paragraph*{Bar}\hspace*{\fill}

\label{ok_link_tag_overloads.TOverloadedMethods-Bar}
\index{Bar}
\begin{list}{}{
\settowidth{\tmplength}{\textbf{Description}}
\setlength{\itemindent}{0cm}
\setlength{\listparindent}{0cm}
\setlength{\leftmargin}{\evensidemargin}
\addtolength{\leftmargin}{\tmplength}
\settowidth{\labelsep}{X}
\addtolength{\leftmargin}{\labelsep}
\setlength{\labelwidth}{\tmplength}
}
\item[\textbf{Declaration}\hfill]
\ifpdf
\begin{flushleft}
\fi
\begin{ttfamily}
public procedure Bar(MyInt: IntEGEr); overload;\end{ttfamily}

\ifpdf
\end{flushleft}
\fi

\par
\item[\textbf{Description}]
\begin{ttfamily}Bar\end{ttfamily}

\end{list}
\paragraph*{Bar}\hspace*{\fill}

\label{ok_link_tag_overloads.TOverloadedMethods-Bar}
\index{Bar}
\begin{list}{}{
\settowidth{\tmplength}{\textbf{Description}}
\setlength{\itemindent}{0cm}
\setlength{\listparindent}{0cm}
\setlength{\leftmargin}{\evensidemargin}
\addtolength{\leftmargin}{\tmplength}
\settowidth{\labelsep}{X}
\addtolength{\leftmargin}{\labelsep}
\setlength{\labelwidth}{\tmplength}
}
\item[\textbf{Declaration}\hfill]
\ifpdf
\begin{flushleft}
\fi
\begin{ttfamily}
public procedure Bar(MyInt: Integer; MyBool: Boolean); overload; override;\end{ttfamily}

\ifpdf
\end{flushleft}
\fi

\end{list}
\paragraph*{Bar}\hspace*{\fill}

\label{ok_link_tag_overloads.TOverloadedMethods-Bar}
\index{Bar}
\begin{list}{}{
\settowidth{\tmplength}{\textbf{Description}}
\setlength{\itemindent}{0cm}
\setlength{\listparindent}{0cm}
\setlength{\leftmargin}{\evensidemargin}
\addtolength{\leftmargin}{\tmplength}
\settowidth{\labelsep}{X}
\addtolength{\leftmargin}{\labelsep}
\setlength{\labelwidth}{\tmplength}
}
\item[\textbf{Declaration}\hfill]
\ifpdf
\begin{flushleft}
\fi
\begin{ttfamily}
public procedure Bar(MyStr: string); overload;\end{ttfamily}

\ifpdf
\end{flushleft}
\fi

\end{list}
\paragraph*{Bar}\hspace*{\fill}

\label{ok_link_tag_overloads.TOverloadedMethods-Bar}
\index{Bar}
\begin{list}{}{
\settowidth{\tmplength}{\textbf{Description}}
\setlength{\itemindent}{0cm}
\setlength{\listparindent}{0cm}
\setlength{\leftmargin}{\evensidemargin}
\addtolength{\leftmargin}{\tmplength}
\settowidth{\labelsep}{X}
\addtolength{\leftmargin}{\labelsep}
\setlength{\labelwidth}{\tmplength}
}
\item[\textbf{Declaration}\hfill]
\ifpdf
\begin{flushleft}
\fi
\begin{ttfamily}
public procedure Bar(const MyStr); overload;\end{ttfamily}

\ifpdf
\end{flushleft}
\fi

\end{list}
\paragraph*{Bar}\hspace*{\fill}

\label{ok_link_tag_overloads.TOverloadedMethods-Bar}
\index{Bar}
\begin{list}{}{
\settowidth{\tmplength}{\textbf{Description}}
\setlength{\itemindent}{0cm}
\setlength{\listparindent}{0cm}
\setlength{\leftmargin}{\evensidemargin}
\addtolength{\leftmargin}{\tmplength}
\settowidth{\labelsep}{X}
\addtolength{\leftmargin}{\labelsep}
\setlength{\labelwidth}{\tmplength}
}
\item[\textbf{Declaration}\hfill]
\ifpdf
\begin{flushleft}
\fi
\begin{ttfamily}
public procedure Bar(const MyStr, MyOtherStr: STRING); overload;\end{ttfamily}

\ifpdf
\end{flushleft}
\fi

\end{list}
\section{Functions and Procedures}
\ifpdf
\subsection*{\large{\textbf{TopLevelFunc}}\normalsize\hspace{1ex}\hrulefill}
\else
\subsection*{TopLevelFunc}
\fi
\label{ok_link_tag_overloads-TopLevelFunc}
\index{TopLevelFunc}
\begin{list}{}{
\settowidth{\tmplength}{\textbf{Description}}
\setlength{\itemindent}{0cm}
\setlength{\listparindent}{0cm}
\setlength{\leftmargin}{\evensidemargin}
\addtolength{\leftmargin}{\tmplength}
\settowidth{\labelsep}{X}
\addtolength{\leftmargin}{\labelsep}
\setlength{\labelwidth}{\tmplength}
}
\item[\textbf{Declaration}\hfill]
\ifpdf
\begin{flushleft}
\fi
\begin{ttfamily}
function TopLevelFunc(MyStr: string): integer; overload;\end{ttfamily}

\ifpdf
\end{flushleft}
\fi

\end{list}
\ifpdf
\subsection*{\large{\textbf{TopLevelFunc}}\normalsize\hspace{1ex}\hrulefill}
\else
\subsection*{TopLevelFunc}
\fi
\label{ok_link_tag_overloads-TopLevelFunc}
\index{TopLevelFunc}
\begin{list}{}{
\settowidth{\tmplength}{\textbf{Description}}
\setlength{\itemindent}{0cm}
\setlength{\listparindent}{0cm}
\setlength{\leftmargin}{\evensidemargin}
\addtolength{\leftmargin}{\tmplength}
\settowidth{\labelsep}{X}
\addtolength{\leftmargin}{\labelsep}
\setlength{\labelwidth}{\tmplength}
}
\item[\textbf{Declaration}\hfill]
\ifpdf
\begin{flushleft}
\fi
\begin{ttfamily}
function TopLevelFunc(MyInt: Integer): Integer; overload;\end{ttfamily}

\ifpdf
\end{flushleft}
\fi

\end{list}
\end{document}
