AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CodeGenNode.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/glue/Glue_EXPORTS.h>
10#include <aws/glue/model/CodeGenNodeArg.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace Glue {
22namespace Model {
23
30 public:
31 AWS_GLUE_API CodeGenNode() = default;
32 AWS_GLUE_API CodeGenNode(Aws::Utils::Json::JsonView jsonValue);
35
37
40 inline const Aws::String& GetId() const { return m_id; }
41 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
42 template <typename IdT = Aws::String>
43 void SetId(IdT&& value) {
44 m_idHasBeenSet = true;
45 m_id = std::forward<IdT>(value);
46 }
47 template <typename IdT = Aws::String>
48 CodeGenNode& WithId(IdT&& value) {
49 SetId(std::forward<IdT>(value));
50 return *this;
51 }
53
55
58 inline const Aws::String& GetNodeType() const { return m_nodeType; }
59 inline bool NodeTypeHasBeenSet() const { return m_nodeTypeHasBeenSet; }
60 template <typename NodeTypeT = Aws::String>
61 void SetNodeType(NodeTypeT&& value) {
62 m_nodeTypeHasBeenSet = true;
63 m_nodeType = std::forward<NodeTypeT>(value);
64 }
65 template <typename NodeTypeT = Aws::String>
66 CodeGenNode& WithNodeType(NodeTypeT&& value) {
67 SetNodeType(std::forward<NodeTypeT>(value));
68 return *this;
69 }
71
73
76 inline const Aws::Vector<CodeGenNodeArg>& GetArgs() const { return m_args; }
77 inline bool ArgsHasBeenSet() const { return m_argsHasBeenSet; }
78 template <typename ArgsT = Aws::Vector<CodeGenNodeArg>>
79 void SetArgs(ArgsT&& value) {
80 m_argsHasBeenSet = true;
81 m_args = std::forward<ArgsT>(value);
82 }
83 template <typename ArgsT = Aws::Vector<CodeGenNodeArg>>
84 CodeGenNode& WithArgs(ArgsT&& value) {
85 SetArgs(std::forward<ArgsT>(value));
86 return *this;
87 }
88 template <typename ArgsT = CodeGenNodeArg>
89 CodeGenNode& AddArgs(ArgsT&& value) {
90 m_argsHasBeenSet = true;
91 m_args.emplace_back(std::forward<ArgsT>(value));
92 return *this;
93 }
95
97
100 inline int GetLineNumber() const { return m_lineNumber; }
101 inline bool LineNumberHasBeenSet() const { return m_lineNumberHasBeenSet; }
102 inline void SetLineNumber(int value) {
103 m_lineNumberHasBeenSet = true;
104 m_lineNumber = value;
105 }
106 inline CodeGenNode& WithLineNumber(int value) {
107 SetLineNumber(value);
108 return *this;
109 }
111 private:
112 Aws::String m_id;
113
114 Aws::String m_nodeType;
115
117
118 int m_lineNumber{0};
119 bool m_idHasBeenSet = false;
120 bool m_nodeTypeHasBeenSet = false;
121 bool m_argsHasBeenSet = false;
122 bool m_lineNumberHasBeenSet = false;
123};
124
125} // namespace Model
126} // namespace Glue
127} // namespace Aws
const Aws::String & GetId() const
Definition CodeGenNode.h:40
AWS_GLUE_API CodeGenNode & operator=(Aws::Utils::Json::JsonView jsonValue)
CodeGenNode & WithArgs(ArgsT &&value)
Definition CodeGenNode.h:84
CodeGenNode & WithId(IdT &&value)
Definition CodeGenNode.h:48
void SetArgs(ArgsT &&value)
Definition CodeGenNode.h:79
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< CodeGenNodeArg > & GetArgs() const
Definition CodeGenNode.h:76
AWS_GLUE_API CodeGenNode(Aws::Utils::Json::JsonView jsonValue)
void SetNodeType(NodeTypeT &&value)
Definition CodeGenNode.h:61
CodeGenNode & AddArgs(ArgsT &&value)
Definition CodeGenNode.h:89
CodeGenNode & WithLineNumber(int value)
const Aws::String & GetNodeType() const
Definition CodeGenNode.h:58
AWS_GLUE_API CodeGenNode()=default
CodeGenNode & WithNodeType(NodeTypeT &&value)
Definition CodeGenNode.h:66
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue