#ifndef CYCRIPT_EXCEPTION_HPP
#define CYCRIPT_EXCEPTION_HPP
+#ifdef CY_EXECUTE
#include <JavaScriptCore/JSBase.h>
+#endif
#include <apr_pools.h>
#include "Standard.hpp"
}
virtual const char *PoolCString(apr_pool_t *pool) const = 0;
+#ifdef CY_EXECUTE
virtual JSValueRef CastJSValue(JSContextRef context) const = 0;
+#endif
};
void CYThrow(const char *format, ...) _noreturn;
+
+#ifdef CY_EXECUTE
void CYThrow(JSContextRef context, JSValueRef value);
+#endif
#define CYTry \
try
return NULL; \
}
+// XXX: fix this: _ is not safe; this is /not/ Menes ;P
+#undef _assert
#define _assert(test, args...) do { \
if (!(test)) \
CYThrow("*** _assert(%s):%s(%u):%s [errno=%d]", #test, __FILE__, __LINE__, __FUNCTION__, errno); \