15#ifndef GOOGLE_CLOUD_CPP_GOOGLE_CLOUD_STORAGE_IAM_POLICY_H
16#define GOOGLE_CLOUD_CPP_GOOGLE_CLOUD_STORAGE_IAM_POLICY_H
18#include "google/cloud/storage/version.h"
19#include "google/cloud/status_or.h"
28GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_BEGIN
31
32
33
34
35
39
40
41
42
43
44
45
46
47
48
49
50
53 std::string description =
"", std::string location =
"");
71 std::string
title()
const;
80 explicit NativeExpression(std::unique_ptr<Impl> impl);
83 std::unique_ptr<Impl> pimpl_;
89
90
91
92
93
94
95
116 std::string
role()
const;
118 std::vector<std::string>
const&
members()
const;
119 std::vector<std::string>&
members();
128 explicit NativeIamBinding(std::unique_ptr<Impl> impl);
130 std::unique_ptr<Impl> pimpl_;
136
137
138
139
140
141
142
143
144
145
146
147
148
149
153 std::string etag =
"", std::int32_t version = 0);
158 std::string
ToJson()
const;
169 std::string
etag()
const;
176 explicit NativeIamPolicy(std::unique_ptr<Impl> impl);
177 std::unique_ptr<Impl> pimpl_;
182GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END
Represents a google::type::Expr.
Definition: iam_policy.h:36
std::string description() const
std::string expression() const
friend bool operator!=(NativeExpression const &a, NativeExpression const &b) noexcept
void set_expression(std::string expression)
NativeExpression(NativeExpression &&) noexcept
void set_location(std::string location)
NativeExpression & operator=(NativeExpression &&) noexcept
NativeExpression(NativeExpression const &other)
std::string location() const
friend bool operator==(NativeExpression const &a, NativeExpression const &b) noexcept
void set_title(std::string title)
NativeExpression(std::string expression, std::string title="", std::string description="", std::string location="")
Create a NativeExpression.
void set_description(std::string description)
NativeExpression & operator=(NativeExpression const &other)
std::string title() const
Represents a Binding which associates a member with a particular role which can be used for Identity ...
Definition: iam_policy.h:96
NativeIamBinding(NativeIamBinding &&) noexcept
NativeIamBinding & operator=(NativeIamBinding &&) noexcept
bool has_condition() const
std::vector< std::string > & members()
NativeExpression const & condition() const
NativeExpression & condition()
std::vector< std::string > const & members() const
NativeIamBinding & operator=(NativeIamBinding const &other)
friend bool operator!=(NativeIamBinding const &a, NativeIamBinding const &b) noexcept
NativeIamBinding(NativeIamBinding const &other)
NativeIamBinding(std::string role, std::vector< std::string > members, NativeExpression condition)
NativeIamBinding(std::string role, std::vector< std::string > members)
friend bool operator==(NativeIamBinding const &a, NativeIamBinding const &b) noexcept
void set_condition(NativeExpression condition)
void set_role(std::string role)
Represent the result of a GetIamPolicy or SetIamPolicy request.
Definition: iam_policy.h:150
friend bool operator==(NativeIamPolicy const &a, NativeIamPolicy const &b) noexcept
std::int32_t version() const
void set_etag(std::string etag)
NativeIamPolicy(NativeIamPolicy const &other)
void set_version(std::int32_t version)
static StatusOr< NativeIamPolicy > CreateFromJson(std::string const &json_rep)
std::vector< NativeIamBinding > & bindings()
NativeIamPolicy(std::vector< NativeIamBinding > bindings, std::string etag="", std::int32_t version=0)
std::string ToJson() const
NativeIamPolicy & operator=(NativeIamPolicy const &other)
std::vector< NativeIamBinding > const & bindings() const
friend bool operator!=(NativeIamPolicy const &a, NativeIamPolicy const &b) noexcept
Contains all the Google Cloud Storage C++ client APIs.
Definition: auto_finalize.h:24