AUI Framework  master
Cross-platform module-based framework for developing C++20 desktop applications
AFormMultipart.h
1#pragma once
2
3
4#include <AUI/Common/AString.h>
5#include <AUI/Common/AMap.h>
6#include <AUI/Common/AByteBuffer.h>
7#include <AUI/IO/IInputStream.h>
8
10 std::variant<_<IInputStream>, AString, AByteBuffer> value;
11 AOptional<AString> filename;
12 AOptional<AString> mimeType;
13};
14
18class AFormMultipart: public AMap<AString, AFormMultipartEntry> {
19public:
21
22 _<IInputStream> makeInputStream() const;
23
24 [[nodiscard]]
25 const AString& boundary() const noexcept {
26 return mBoundary;
27 }
28
29
30private:
31 mutable AString mBoundary;
32
33};
std::vector-like growing array for byte storage.
Definition: AByteBuffer.h:31
Web multipart/form-data representation.
Definition: AFormMultipart.h:18
A std::map with AUI extensions.
Definition: AMap.h:218
Utility wrapper implementing the stack-allocated (fast) optional idiom.
Definition: AOptional.h:32
Represents a Unicode character string.
Definition: AString.h:37
An std::weak_ptr with AUI extensions.
Definition: SharedPtrTypes.h:177
Definition: AFormMultipart.h:9