\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_md1881}{}\doxysection{Problem}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1881}
Currently all functions do proper argument checking which might degrade performance.\hypertarget{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1882}{}\doxysection{Constraints}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1882}
\hypertarget{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1883}{}\doxysection{Assumptions}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1883}
\hypertarget{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1884}{}\doxysection{Considered Alternatives}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1884}

\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_md1885}{}\doxysection{Decision}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1885}
Rejected (keep checks) due to time constraints\hypertarget{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1886}{}\doxysection{Rationale}\label{doc_decisions_0b_rejected_null_pointer_checks_md_autotoc_md1886}

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

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

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