libkazv
basejob.hpp File Reference
#include "libkazv-config.hpp"
#include <optional>
#include <variant>
#include <tuple>
#include <functional>
#include <string>
#include <map>
#include <future>
#include <immer/map.hpp>
#include <immer/array.hpp>
#include <immer/box.hpp>
#include "types.hpp"
#include "copy-helper.hpp"
#include "file-desc.hpp"
Include dependency graph for basejob.hpp:

Go to the source code of this file.

Classes

struct  Kazv::EmptyBody
 
struct  Kazv::Response
 
class  Kazv::BaseJob
 
struct  Kazv::BaseJob::Get
 
struct  Kazv::BaseJob::Post
 
struct  Kazv::BaseJob::Put
 
struct  Kazv::BaseJob::Delete
 
class  Kazv::BaseJob::Query
 

Namespaces

 Kazv
 
 Kazv::detail
 

Typedefs

using Kazv::Header = immer::box< std::map< std::string, std::string > >
 
using Kazv::BytesBody = Bytes
 
using Kazv::JsonBody = JsonWrap
 
using Kazv::FileBody = FileDesc
 
using Kazv::Body = std::variant< EmptyBody, JsonBody, BytesBody, FileBody >
 

Enumerations

enum  Kazv::JobQueuePolicy { Kazv::AlwaysContinue, Kazv::CancelFutureIfFailed }
 

Functions

bool Kazv::operator== (EmptyBody, EmptyBody)
 
bool Kazv::isBodyJson (Body body)
 
bool Kazv::operator== (Response a, Response b)
 
bool Kazv::operator== (BaseJob a, BaseJob b)
 
bool Kazv::operator!= (BaseJob a, BaseJob b)
 
bool Kazv::operator== (BaseJob::Get, BaseJob::Get)
 
bool Kazv::operator== (BaseJob::Post, BaseJob::Post)
 
bool Kazv::operator== (BaseJob::Put, BaseJob::Put)
 
bool Kazv::operator== (BaseJob::Delete, BaseJob::Delete)
 
template<class T >
void Kazv::addToQuery (BaseJob::Query &q, std::string name, T &&arg)
 
template<class T >
void Kazv::addToQueryIfNeeded (BaseJob::Query &q, std::string name, T &&arg)