\doxysection{aspa\+\_\+array.\+h}
\hypertarget{aspa__array_8h_source}{}\label{aspa__array_8h_source}\index{rtrlib/aspa/aspa\_array/aspa\_array.h@{rtrlib/aspa/aspa\_array/aspa\_array.h}}
\mbox{\hyperlink{aspa__array_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{comment}{/*}}
\DoxyCodeLine{00002\ \textcolor{comment}{\ *\ This\ file\ is\ part\ of\ RTRlib.}}
\DoxyCodeLine{00003\ \textcolor{comment}{\ *}}
\DoxyCodeLine{00004\ \textcolor{comment}{\ *\ This\ file\ is\ subject\ to\ the\ terms\ and\ conditions\ of\ the\ MIT\ license.}}
\DoxyCodeLine{00005\ \textcolor{comment}{\ *\ See\ the\ file\ LICENSE\ in\ the\ top\ level\ directory\ for\ more\ details.}}
\DoxyCodeLine{00006\ \textcolor{comment}{\ *}}
\DoxyCodeLine{00007\ \textcolor{comment}{\ *\ Website:\ http://rtrlib.realmv6.org/}}
\DoxyCodeLine{00008\ \textcolor{comment}{\ */}}
\DoxyCodeLine{00009\ }
\DoxyCodeLine{00010\ \textcolor{preprocessor}{\#ifndef\ RTR\_ASPA\_ARRAY\_H}}
\DoxyCodeLine{00011\ \textcolor{preprocessor}{\#define\ RTR\_ASPA\_ARRAY\_H}}
\DoxyCodeLine{00012\ }
\DoxyCodeLine{00013\ \textcolor{preprocessor}{\#include\ "{}../aspa.h"{}}}
\DoxyCodeLine{00014\ }
\DoxyCodeLine{00015\ \textcolor{preprocessor}{\#include\ <stdbool.h>}}
\DoxyCodeLine{00016\ \textcolor{preprocessor}{\#include\ <stdint.h>}}
\DoxyCodeLine{00017\ \textcolor{preprocessor}{\#include\ <stdlib.h>}}
\DoxyCodeLine{00018\ \textcolor{preprocessor}{\#include\ <string.h>}}
\DoxyCodeLine{00019\ }
\DoxyCodeLine{00027\ \textcolor{keyword}{struct\ }\mbox{\hyperlink{structaspa__array}{aspa\_array}}\ \{}
\DoxyCodeLine{00028\ \ \ \ \ \ \ \ \ uint32\_t\ \mbox{\hyperlink{structaspa__array_ac8b7886919161bce2b4d25ba01a9cbe0}{size}};}
\DoxyCodeLine{00029\ \ \ \ \ \ \ \ \ \textcolor{keywordtype}{size\_t}\ \mbox{\hyperlink{structaspa__array_a30d25fe588003e5ca376d3d2941e534e}{capacity}};}
\DoxyCodeLine{00030\ \ \ \ \ \ \ \ \ \textcolor{keyword}{struct\ }\mbox{\hyperlink{structaspa__record}{aspa\_record}}\ *\mbox{\hyperlink{structaspa__array_a6e9357e053db571fb272af357244971f}{data}};}
\DoxyCodeLine{00031\ \};}
\DoxyCodeLine{00032\ }
\DoxyCodeLine{00033\ \textcolor{comment}{//\ MARK:\ -\/\ Initialization\ \&\ Deinitialization}}
\DoxyCodeLine{00034\ }
\DoxyCodeLine{00040\ \textcolor{keyword}{enum}\ \mbox{\hyperlink{group__mod__aspa__h_ga18e5d060687b3cdf30d418b2a9639e6b}{aspa\_status}}\ \mbox{\hyperlink{aspa__array_8h_a50a106912f721fd5bac2e73afc578615}{aspa\_array\_create}}(\textcolor{keyword}{struct}\ \mbox{\hyperlink{structaspa__array}{aspa\_array}}\ **array\_ptr);}
\DoxyCodeLine{00041\ }
\DoxyCodeLine{00047\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{aspa__array_8h_a957138636c3f6cf544b88b1462b6b51e}{aspa\_array\_free}}(\textcolor{keyword}{struct}\ \mbox{\hyperlink{structaspa__array}{aspa\_array}}\ *array,\ \textcolor{keywordtype}{bool}\ free\_provider\_arrays);}
\DoxyCodeLine{00048\ }
\DoxyCodeLine{00049\ \textcolor{comment}{//\ MARK:\ -\/\ Manipulation}}
\DoxyCodeLine{00050\ }
\DoxyCodeLine{00061\ \textcolor{keyword}{enum}\ \mbox{\hyperlink{group__mod__aspa__h_ga18e5d060687b3cdf30d418b2a9639e6b}{aspa\_status}}\ \mbox{\hyperlink{aspa__array_8h_abf0f685f8aa018a017518c63a24e7546}{aspa\_array\_insert}}(\textcolor{keyword}{struct}\ \mbox{\hyperlink{structaspa__array}{aspa\_array}}\ *array,\ \textcolor{keywordtype}{size\_t}\ index,\ \textcolor{keyword}{struct}\ \mbox{\hyperlink{structaspa__record}{aspa\_record}}\ *record,}
\DoxyCodeLine{00062\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordtype}{bool}\ copy\_providers);}
\DoxyCodeLine{00063\ }
\DoxyCodeLine{00073\ \textcolor{keyword}{enum}\ \mbox{\hyperlink{group__mod__aspa__h_ga18e5d060687b3cdf30d418b2a9639e6b}{aspa\_status}}\ \mbox{\hyperlink{aspa__array_8h_a6bac0bd0c93c1f489b63476cc6ea10cf}{aspa\_array\_append}}(\textcolor{keyword}{struct}\ \mbox{\hyperlink{structaspa__array}{aspa\_array}}\ *array,\ \textcolor{keyword}{struct}\ \mbox{\hyperlink{structaspa__record}{aspa\_record}}\ *record,\ \textcolor{keywordtype}{bool}\ copy\_providers);}
\DoxyCodeLine{00074\ }
\DoxyCodeLine{00084\ \textcolor{keyword}{enum}\ \mbox{\hyperlink{group__mod__aspa__h_ga18e5d060687b3cdf30d418b2a9639e6b}{aspa\_status}}\ \mbox{\hyperlink{aspa__array_8h_a84310fd7e6e9e0c8b4514b3f71597b90}{aspa\_array\_remove}}(\textcolor{keyword}{struct}\ \mbox{\hyperlink{structaspa__array}{aspa\_array}}\ *array,\ \textcolor{keywordtype}{size\_t}\ index,\ \textcolor{keywordtype}{bool}\ free\_providers);}
\DoxyCodeLine{00085\ }
\DoxyCodeLine{00086\ \textcolor{comment}{//\ MARK:\ -\/\ Retrieval}}
\DoxyCodeLine{00087\ }
\DoxyCodeLine{00095\ \textcolor{keyword}{struct\ }\mbox{\hyperlink{structaspa__record}{aspa\_record}}\ *\mbox{\hyperlink{aspa__array_8h_a955d5d08bf6cdc78c0cfc2ccb5fd5221}{aspa\_array\_get\_record}}(\textcolor{keyword}{struct}\ \mbox{\hyperlink{structaspa__array}{aspa\_array}}\ *array,\ \textcolor{keywordtype}{size\_t}\ index);}
\DoxyCodeLine{00096\ }
\DoxyCodeLine{00104\ \textcolor{keyword}{struct\ }\mbox{\hyperlink{structaspa__record}{aspa\_record}}\ *\mbox{\hyperlink{aspa__array_8h_a373cd0b0a9d7e540eac302dae2d74697}{aspa\_array\_search}}(\textcolor{keyword}{struct}\ \mbox{\hyperlink{structaspa__array}{aspa\_array}}\ *array,\ uint32\_t\ \mbox{\hyperlink{structaspa__record_ab322ade16ad4e478e0a6f99a2a594648}{customer\_asn}});}
\DoxyCodeLine{00105\ }
\DoxyCodeLine{00113\ \textcolor{keyword}{enum}\ \mbox{\hyperlink{group__mod__aspa__h_ga18e5d060687b3cdf30d418b2a9639e6b}{aspa\_status}}\ \mbox{\hyperlink{aspa__array_8h_ae9c61e1f652d2c44ab2427d294fddd13}{aspa\_array\_reserve}}(\textcolor{keyword}{struct}\ \mbox{\hyperlink{structaspa__array}{aspa\_array}}\ *array,\ \textcolor{keywordtype}{size\_t}\ size);}
\DoxyCodeLine{00114\ }
\DoxyCodeLine{00115\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ RTR\_ASPA\_ARRAY\_H}}

\end{DoxyCode}
