\hypertarget{Elua_8h}{}\section{Elua.\+h File Reference}
\label{Elua_8h}\index{Elua.\+h@{Elua.\+h}}


Elua Library.  


\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I}
\item 
\#define \hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I}
\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\hypertarget{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{}typedef struct \+\_\+\+Elua\+\_\+\+State \hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State}\label{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}

\begin{DoxyCompactList}\small\item\em Opaque Elua state. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} int \hyperlink{group__Elua_gacf7fc6f0386d30e4af4fcb8fd424c8dc}{elua\+\_\+init} (void)
\begin{DoxyCompactList}\small\item\em Initialize the Elua library. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} int \hyperlink{group__Elua_ga8364635553424c58bdbb50f9bb842d9b}{elua\+\_\+shutdown} (void)
\begin{DoxyCompactList}\small\item\em Shutdown the Elua library. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$ \hyperlink{group__Elua_ga95a19b9370dc6704da491c835a0a081a}{elua\+\_\+state\+\_\+new} (const char $\ast$progname)
\begin{DoxyCompactList}\small\item\em Create a new Elua state. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$ \hyperlink{group__Elua_gaa88407517c877c3558cfbb4b5242bf76}{elua\+\_\+state\+\_\+from\+\_\+lua\+\_\+state\+\_\+get} (lua\+\_\+\+State $\ast$L)
\begin{DoxyCompactList}\small\item\em Retrieve an Elua state from a Lua state. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} void \hyperlink{group__Elua_ga20ec17a66199e38fe108d522bbf32349}{elua\+\_\+state\+\_\+free} (\hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es)
\begin{DoxyCompactList}\small\item\em Destroy an Elua state. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} void \hyperlink{group__Elua_ga92e75b39e56082d05c2beb7bdf401a15}{elua\+\_\+state\+\_\+dirs\+\_\+set} (\hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es, const char $\ast$core, const char $\ast$mods, const char $\ast$apps)
\begin{DoxyCompactList}\small\item\em Set the Elua directory paths. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} void \hyperlink{group__Elua_ga3ef02ac4acf29212793720849391d4b8}{elua\+\_\+state\+\_\+dirs\+\_\+fill} (\hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es, \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} ignore\+\_\+env)
\begin{DoxyCompactList}\small\item\em Fill the currently unset Elua dirs. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__Stringshare__Group_ga2b7dc19609a55e630a96cc1396e38a53}{Eina\+\_\+\+Stringshare} $\ast$ \hyperlink{group__Elua_ga88b12017f24dc905d1056f6f48869872}{elua\+\_\+state\+\_\+core\+\_\+dir\+\_\+get} (const \hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es)
\begin{DoxyCompactList}\small\item\em Retrieve the Elua core dir. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__Stringshare__Group_ga2b7dc19609a55e630a96cc1396e38a53}{Eina\+\_\+\+Stringshare} $\ast$ \hyperlink{group__Elua_gaeddcbad516e0c2b4906bf5feec03c2f1}{elua\+\_\+state\+\_\+mod\+\_\+dir\+\_\+get} (const \hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es)
\begin{DoxyCompactList}\small\item\em Retrieve the Elua module dir. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__Stringshare__Group_ga2b7dc19609a55e630a96cc1396e38a53}{Eina\+\_\+\+Stringshare} $\ast$ \hyperlink{group__Elua_gacd7abd5a74916feb6f5fddb05c0086f2}{elua\+\_\+state\+\_\+apps\+\_\+dir\+\_\+get} (const \hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es)
\begin{DoxyCompactList}\small\item\em Retrieve the Elua apps dir. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__Stringshare__Group_ga2b7dc19609a55e630a96cc1396e38a53}{Eina\+\_\+\+Stringshare} $\ast$ \hyperlink{group__Elua_ga859524263fb615fd54824970ef1764a3}{elua\+\_\+state\+\_\+prog\+\_\+name\+\_\+get} (const \hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es)
\begin{DoxyCompactList}\small\item\em Retrieve the prog name set on state creation. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} void \hyperlink{group__Elua_ga1c0e7c790bcfb9f0e9b19295d6e953f4}{elua\+\_\+state\+\_\+include\+\_\+path\+\_\+add} (\hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es, const char $\ast$path)
\begin{DoxyCompactList}\small\item\em Add another path to look up modules in to the state. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Elua_gaa25a6712cc9fe309050b90f577ed4721}{elua\+\_\+state\+\_\+require\+\_\+ref\+\_\+push} (\hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es)
\begin{DoxyCompactList}\small\item\em Push the Elua \char`\"{}require\char`\"{} function onto the Lua stack. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Elua_gaeb1c950c4487106cdb2ed1d915ef4dd4}{elua\+\_\+state\+\_\+appload\+\_\+ref\+\_\+push} (\hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es)
\begin{DoxyCompactList}\small\item\em Push the Elua app loader function onto the Lua stack. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} lua\+\_\+\+State $\ast$ \hyperlink{group__Elua_ga2313864a4afb123511d8b4caeb63d709}{elua\+\_\+state\+\_\+lua\+\_\+state\+\_\+get} (const \hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es)
\begin{DoxyCompactList}\small\item\em Retrieve the Lua state from an Elua state. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Elua_ga0a4d8913fce4bb564a3ae7935e1f29a5}{elua\+\_\+state\+\_\+setup} (\hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es)
\begin{DoxyCompactList}\small\item\em Set up the Elua state. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} int \hyperlink{group__Elua_gaaf5c1391a7660da2bb633e15dbeb8b68}{elua\+\_\+io\+\_\+loadfile} (const \hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es, const char $\ast$fname)
\begin{DoxyCompactList}\small\item\em Loads a file using Elua\textquotesingle{}s own mmap-\/based I\+O. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Elua_gafde1f73d35f2521d3812b72b2c3542c1}{elua\+\_\+util\+\_\+require} (\hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es, const char $\ast$libname)
\begin{DoxyCompactList}\small\item\em Requires a module. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Elua_ga7a9f852864e3e14dc517fa23ad1167c5}{elua\+\_\+util\+\_\+file\+\_\+run} (\hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es, const char $\ast$fname)
\begin{DoxyCompactList}\small\item\em Runs a file. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Elua_ga7936ab36149c7572cc756fe5db6bf91d}{elua\+\_\+util\+\_\+string\+\_\+run} (\hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es, const char $\ast$chunk, const char $\ast$chname)
\begin{DoxyCompactList}\small\item\em Runs a string. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} int \hyperlink{group__Elua_ga8804ca091a1310f62cab73d592b55f99}{elua\+\_\+util\+\_\+app\+\_\+load} (\hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es, const char $\ast$appname)
\begin{DoxyCompactList}\small\item\em Loads an application. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Elua_ga003f5ca8e27d1249f6531318edb65456}{elua\+\_\+util\+\_\+script\+\_\+run} (\hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es, int argc, char $\ast$$\ast$argv, int n, int $\ast$quit)
\begin{DoxyCompactList}\small\item\em Runs a script. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} int \hyperlink{group__Elua_ga9c5bed4721ba3cc5b8778c59b0c98886}{elua\+\_\+util\+\_\+error\+\_\+report} (const \hyperlink{group__Elua_ga688a5ca32c81bcaf4811f688c3fec981}{Elua\+\_\+\+State} $\ast$es, int status)
\begin{DoxyCompactList}\small\item\em Reports an error using Eina logging. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Elua Library. 

