AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
IcebergSchema.h
1
6#pragma once
7#include <aws/s3tables/S3Tables_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/s3tables/model/SchemaField.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace S3Tables
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_S3TABLES_API IcebergSchema() = default;
37 AWS_S3TABLES_API IcebergSchema(Aws::Utils::Json::JsonView jsonValue);
39 AWS_S3TABLES_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
46 inline const Aws::Vector<SchemaField>& GetFields() const { return m_fields; }
47 inline bool FieldsHasBeenSet() const { return m_fieldsHasBeenSet; }
48 template<typename FieldsT = Aws::Vector<SchemaField>>
49 void SetFields(FieldsT&& value) { m_fieldsHasBeenSet = true; m_fields = std::forward<FieldsT>(value); }
50 template<typename FieldsT = Aws::Vector<SchemaField>>
51 IcebergSchema& WithFields(FieldsT&& value) { SetFields(std::forward<FieldsT>(value)); return *this;}
52 template<typename FieldsT = SchemaField>
53 IcebergSchema& AddFields(FieldsT&& value) { m_fieldsHasBeenSet = true; m_fields.emplace_back(std::forward<FieldsT>(value)); return *this; }
55 private:
56
58 bool m_fieldsHasBeenSet = false;
59 };
60
61} // namespace Model
62} // namespace S3Tables
63} // namespace Aws
IcebergSchema & AddFields(FieldsT &&value)
AWS_S3TABLES_API IcebergSchema(Aws::Utils::Json::JsonView jsonValue)
IcebergSchema & WithFields(FieldsT &&value)
AWS_S3TABLES_API IcebergSchema()=default
const Aws::Vector< SchemaField > & GetFields() const
AWS_S3TABLES_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_S3TABLES_API IcebergSchema & operator=(Aws::Utils::Json::JsonView jsonValue)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue