1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
/// <p>Returns information about the approval rules applied to a pull request and whether conditions have been met.</p>
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct Evaluation {
/// <p>Whether the state of the pull request is approved.</p>
pub approved: bool,
/// <p>Whether the approval rule requirements for the pull request have been overridden and no longer need to be met.</p>
pub overridden: bool,
/// <p>The names of the approval rules that have had their conditions met.</p>
pub approval_rules_satisfied: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
/// <p>The names of the approval rules that have not had their conditions met.</p>
pub approval_rules_not_satisfied: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
}
impl Evaluation {
/// <p>Whether the state of the pull request is approved.</p>
pub fn approved(&self) -> bool {
self.approved
}
/// <p>Whether the approval rule requirements for the pull request have been overridden and no longer need to be met.</p>
pub fn overridden(&self) -> bool {
self.overridden
}
/// <p>The names of the approval rules that have had their conditions met.</p>
///
/// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.approval_rules_satisfied.is_none()`.
pub fn approval_rules_satisfied(&self) -> &[::std::string::String] {
self.approval_rules_satisfied.as_deref().unwrap_or_default()
}
/// <p>The names of the approval rules that have not had their conditions met.</p>
///
/// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.approval_rules_not_satisfied.is_none()`.
pub fn approval_rules_not_satisfied(&self) -> &[::std::string::String] {
self.approval_rules_not_satisfied.as_deref().unwrap_or_default()
}
}
impl Evaluation {
/// Creates a new builder-style object to manufacture [`Evaluation`](crate::types::Evaluation).
pub fn builder() -> crate::types::builders::EvaluationBuilder {
crate::types::builders::EvaluationBuilder::default()
}
}
/// A builder for [`Evaluation`](crate::types::Evaluation).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct EvaluationBuilder {
pub(crate) approved: ::std::option::Option<bool>,
pub(crate) overridden: ::std::option::Option<bool>,
pub(crate) approval_rules_satisfied: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
pub(crate) approval_rules_not_satisfied: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
}
impl EvaluationBuilder {
/// <p>Whether the state of the pull request is approved.</p>
pub fn approved(mut self, input: bool) -> Self {
self.approved = ::std::option::Option::Some(input);
self
}
/// <p>Whether the state of the pull request is approved.</p>
pub fn set_approved(mut self, input: ::std::option::Option<bool>) -> Self {
self.approved = input;
self
}
/// <p>Whether the state of the pull request is approved.</p>
pub fn get_approved(&self) -> &::std::option::Option<bool> {
&self.approved
}
/// <p>Whether the approval rule requirements for the pull request have been overridden and no longer need to be met.</p>
pub fn overridden(mut self, input: bool) -> Self {
self.overridden = ::std::option::Option::Some(input);
self
}
/// <p>Whether the approval rule requirements for the pull request have been overridden and no longer need to be met.</p>
pub fn set_overridden(mut self, input: ::std::option::Option<bool>) -> Self {
self.overridden = input;
self
}
/// <p>Whether the approval rule requirements for the pull request have been overridden and no longer need to be met.</p>
pub fn get_overridden(&self) -> &::std::option::Option<bool> {
&self.overridden
}
/// Appends an item to `approval_rules_satisfied`.
///
/// To override the contents of this collection use [`set_approval_rules_satisfied`](Self::set_approval_rules_satisfied).
///
/// <p>The names of the approval rules that have had their conditions met.</p>
pub fn approval_rules_satisfied(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
let mut v = self.approval_rules_satisfied.unwrap_or_default();
v.push(input.into());
self.approval_rules_satisfied = ::std::option::Option::Some(v);
self
}
/// <p>The names of the approval rules that have had their conditions met.</p>
pub fn set_approval_rules_satisfied(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
self.approval_rules_satisfied = input;
self
}
/// <p>The names of the approval rules that have had their conditions met.</p>
pub fn get_approval_rules_satisfied(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
&self.approval_rules_satisfied
}
/// Appends an item to `approval_rules_not_satisfied`.
///
/// To override the contents of this collection use [`set_approval_rules_not_satisfied`](Self::set_approval_rules_not_satisfied).
///
/// <p>The names of the approval rules that have not had their conditions met.</p>
pub fn approval_rules_not_satisfied(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
let mut v = self.approval_rules_not_satisfied.unwrap_or_default();
v.push(input.into());
self.approval_rules_not_satisfied = ::std::option::Option::Some(v);
self
}
/// <p>The names of the approval rules that have not had their conditions met.</p>
pub fn set_approval_rules_not_satisfied(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
self.approval_rules_not_satisfied = input;
self
}
/// <p>The names of the approval rules that have not had their conditions met.</p>
pub fn get_approval_rules_not_satisfied(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
&self.approval_rules_not_satisfied
}
/// Consumes the builder and constructs a [`Evaluation`](crate::types::Evaluation).
pub fn build(self) -> crate::types::Evaluation {
crate::types::Evaluation {
approved: self.approved.unwrap_or_default(),
overridden: self.overridden.unwrap_or_default(),
approval_rules_satisfied: self.approval_rules_satisfied,
approval_rules_not_satisfied: self.approval_rules_not_satisfied,
}
}
}