static function asSurpriseTypedError($err, $msg = null, $p = null)
 {
     if ($msg === null) {
         $msg = "Failure: " . Std::string($err);
     }
     return tink_core__Future_Future_Impl_::sync(tink_core_Outcome::Failure(ufront_web_HttpError::wrap($err, $msg, $p)));
 }
 public function executeResult($context)
 {
     try {
         return $context->actionContext->actionResult->executeResult($context->actionContext);
     } catch (Exception $__hx__e) {
         $_ex_ = $__hx__e instanceof HException ? $__hx__e->e : $__hx__e;
         $e = $_ex_;
         $p_methodName = "executeResult";
         $p_lineNumber = -1;
         $p_fileName = "";
         $p_customParams = new _hx_array(array("actionContext"));
         $p_className = Type::getClassName(Type::getClass($context->actionContext));
         return tink_core__Future_Future_Impl_::sync(tink_core_Outcome::Failure(ufront_web_HttpError::wrap($e, null, _hx_anonymous(array("fileName" => "MVCHandler.hx", "lineNumber" => 70, "className" => "ufront.web.MVCHandler", "methodName" => "executeResult")))));
     }
 }
function ufront_web_Controller_1(&$surprise, $outcome)
{
    switch ($outcome->index) {
        case 0:
            $result = _hx_deref($outcome)->params[0];
            return tink_core_Outcome::Success(ufront_web_result_ActionResult::wrap($result));
            break;
        case 1:
            $error = _hx_deref($outcome)->params[0];
            return tink_core_Outcome::Failure(ufront_web_HttpError::wrap($error, null, _hx_anonymous(array("fileName" => "Controller.hx", "lineNumber" => 301, "className" => "ufront.web.Controller", "methodName" => "wrapResultOrError"))));
            break;
    }
}
function ufront_app_HttpApplication_9(&$_g, &$ctx, &$done, &$flag, &$modules, &$runNext, &$runNext1)
{
    $m = $modules->shift();
    if ($flag !== null && ($ctx->completion & 1 << $flag->index) !== 0) {
        $result = tink_core_Outcome::Success(tink_core_Noise::$Noise);
        if ($done->{"list"} === null) {
            false;
        } else {
            $list = $done->{"list"};
            $done->{"list"} = null;
            $done->result = $result;
            tink_core__Callback_CallbackList_Impl_::invoke($list, $result);
            tink_core__Callback_CallbackList_Impl_::clear($list);
            true;
        }
    } else {
        if ($m === null) {
            if ($flag !== null) {
                $ctx->completion |= 1 << $flag->index;
            }
            $result1 = tink_core_Outcome::Success(tink_core_Noise::$Noise);
            if ($done->{"list"} === null) {
                false;
            } else {
                $list1 = $done->{"list"};
                $done->{"list"} = null;
                $done->result = $result1;
                tink_core__Callback_CallbackList_Impl_::invoke($list1, $result1);
                tink_core__Callback_CallbackList_Impl_::clear($list1);
                true;
            }
        } else {
            $moduleCb = isset($m->a) ? $m->a : array($m, "a");
            $_g->currentModule = $m->b;
            $moduleResult = null;
            try {
                $moduleResult = call_user_func_array($moduleCb, array($ctx));
            } catch (Exception $__hx__e) {
                $_ex_ = $__hx__e instanceof HException ? $__hx__e->e : $__hx__e;
                $e = $_ex_;
                $ctx->messages->push(_hx_anonymous(array("msg" => "Caught error " . Std::string($e) . " while executing module " . _hx_string_or_null($_g->currentModule->className) . "." . _hx_string_or_null($_g->currentModule->methodName) . " in HttpApplication.executeModules()", "pos" => _hx_anonymous(array("fileName" => "HttpApplication.hx", "lineNumber" => 405, "className" => "ufront.app.HttpApplication", "methodName" => "executeModules")), "type" => ufront_log_MessageType::$MLog)));
                $moduleResult = tink_core__Future_Future_Impl_::sync(tink_core_Outcome::Failure(ufront_web_HttpError::wrap($e, null, $_g->currentModule)));
            }
            $moduleResult(array(new _hx_lambda(array(&$_g, &$ctx, &$done, &$e, &$flag, &$m, &$moduleCb, &$moduleResult, &$modules, &$runNext, &$runNext1), "ufront_app_HttpApplication_22"), 'execute'));
        }
    }
}
function ufront_web_upload_TmpFileUploadMiddleware_3(&$_g, &$ctx, &$dateStr, &$dir, &$file, &$onData, &$onEndPart, &$onPart, &$origFileName, &$postName, &$size, &$tmpFilePath, $result)
{
    switch ($result->index) {
        case 0:
            $s = _hx_deref($result)->params[0];
            return tink_core_Outcome::Success($s);
            break;
        case 1:
            $f = _hx_deref($result)->params[0];
            return tink_core_Outcome::Failure(ufront_web_HttpError::wrap($f, null, _hx_anonymous(array("fileName" => "TmpFileUploadMiddleware.hx", "lineNumber" => 101, "className" => "ufront.web.upload.TmpFileUploadMiddleware", "methodName" => "requestIn"))));
            break;
    }
}