static auto branch()

in include/poac/core/inference.hpp [164:174]


    static auto branch(S&& s, Index idx, VS&& vs) -> decltype(summary(Indices(), static_cast<int>(idx))) {
        namespace exception = core::exception;
        if (s == "exec")
            return execute(Indices(), static_cast<int>(idx), std::move(vs));
        else if (s == "summary")
            return summary(Indices(), static_cast<int>(idx));
        else if (s == "options")
            return options(Indices(), static_cast<int>(idx));
        else
            throw exception::invalid_first_arg("Invalid argument");
    }