\label{doc_decisions_0b_rejected_null_pointer_checks_md_md_doc_decisions_0b_rejected_null_pointer_checks}%
\Hypertarget{doc_decisions_0b_rejected_null_pointer_checks_md_md_doc_decisions_0b_rejected_null_pointer_checks}%
 \hypertarget{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1905}{}\doxysection{Problem}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1905}
Currently all functions do proper argument checking which might degrade performance.\hypertarget{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1906}{}\doxysection{Constraints}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1906}
\hypertarget{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1907}{}\doxysection{Assumptions}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1907}
\hypertarget{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1908}{}\doxysection{Considered Alternatives}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1908}

\begin{DoxyItemize}
\item Removing all null pointer checks and do assert on debug code
\item Removing some null pointer checks
\item adding functional high-\/level methods that avoid most null pointer checks
\end{DoxyItemize}\hypertarget{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1909}{}\doxysection{Decision}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1909}
Rejected (keep checks) due to time constraints\hypertarget{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1910}{}\doxysection{Rationale}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1910}

\begin{DoxyItemize}
\item also passing NULL pointers should have consistent, defined behavior
\end{DoxyItemize}\hypertarget{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1911}{}\doxysection{Implications}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1911}

\begin{DoxyItemize}
\item ABI, API
\end{DoxyItemize}\hypertarget{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1912}{}\doxysection{Related Decisions}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1912}
\hypertarget{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1913}{}\doxysection{Notes}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1913}

\begin{DoxyItemize}
\item Benchmarks needed 
\end{DoxyItemize}