aws-crt-cpp
C++ wrapper around the aws-c-* libraries. Provides Cross-Platform Transport Protocols and SSL/TLS implementations for C++.
Loading...
Searching...
No Matches
BddEngine.h
Go to the documentation of this file.
1#pragma once
7#include <aws/crt/Types.h>
9
10struct aws_endpoints_bdd_engine;
11
12namespace Aws
13{
14 namespace Crt
15 {
16 namespace Endpoints
17 {
29 {
30 public:
37 const ByteCursor &bytecodeCursor,
38 const ByteCursor &partitionsCursor,
39 Allocator *allocator = ApiAllocator()) noexcept;
40
41 ~BddEngine() = default;
42
43 BddEngine(const BddEngine &) = delete;
44 BddEngine &operator=(const BddEngine &) = delete;
45 BddEngine(BddEngine &&) = delete;
47
51 operator bool() const noexcept { return m_engine != nullptr; }
52
57 Optional<ResolutionOutcome> Resolve(const RequestContext &context) const;
58
59 private:
61 };
62 } // namespace Endpoints
63 } // namespace Crt
64} // namespace Aws
#define AWS_CRT_CPP_API
Definition Exports.h:36
Definition BddEngine.h:29
BddEngine & operator=(const BddEngine &)=delete
BddEngine & operator=(BddEngine &&)=delete
BddEngine(BddEngine &&)=delete
BddEngine(const BddEngine &)=delete
Definition RuleEngine.h:26
Definition Optional.h:19
aws_byte_cursor ByteCursor
Definition Types.h:31
aws_allocator Allocator
Definition Allocator.h:14
AWS_CRT_CPP_API Allocator * ApiAllocator() noexcept
Definition Allocator.cpp:24
std::unique_ptr< T, std::function< void(T *)> > ScopedResource
Definition Types.h:164
Definition Allocator.h:11