Google Cloud Bigtable C++ Client  1.9.0
A C++ Client Library for Google Cloud Bigtable
Functions
google::cloud::bigtable::v0 Namespace Reference

Functions

template<class InputIt >
google::iam::v1::Policy IamPolicy (InputIt first_binding, InputIt last_binding, std::string etag="", std::int32_t version=0)
 Create a google::iam::v1::Policy. More...
 
google::iam::v1::Policy IamPolicy (std::initializer_list< google::iam::v1::Binding > bindings, std::string etag="", std::int32_t version=0)
 Create a google::iam::v1::Policy. More...
 
google::iam::v1::Policy IamPolicy (std::vector< google::iam::v1::Binding > bindings, std::string etag="", std::int32_t version=0)
 Create a google::iam::v1::Policy. More...
 
std::ostream & operator<< (std::ostream &os, google::iam::v1::Policy const &rhs)
 
template<typename Functor >
size_t RemoveBindingsFromPolicyIf (google::iam::v1::Policy &policy, Functor pred)
 Remove all bindings matching a predicate from a policy. More...
 
void RemoveBindingFromPolicy (google::iam::v1::Policy &policy, google::protobuf::RepeatedPtrField< google::iam::v1::Binding >::iterator to_remove)
 Remove a specific binding from a policy. More...
 
template<class InputIt >
google::iam::v1::Binding IamBinding (std::string role, InputIt begin, InputIt end)
 Create a google::iam::v1::Binding. More...
 
template<class InputIt >
google::iam::v1::Binding IamBinding (std::string role, InputIt begin, InputIt end, google::type::Expr condition)
 Create a google::iam::v1::Binding. More...
 
google::iam::v1::Binding IamBinding (std::string role, std::initializer_list< std::string > members)
 Create a google::iam::v1::Binding. More...
 
google::iam::v1::Binding IamBinding (std::string role, std::initializer_list< std::string > members, google::type::Expr condition)
 Create a google::iam::v1::Binding. More...
 
google::iam::v1::Binding IamBinding (std::string role, std::vector< std::string > members)
 Create a google::iam::v1::Binding. More...
 
google::iam::v1::Binding IamBinding (std::string role, std::vector< std::string > members, google::type::Expr condition)
 Create a google::iam::v1::Binding. More...
 
std::ostream & operator<< (std::ostream &os, google::iam::v1::Binding const &binding)
 
template<class InputIt >
google::iam::v1::Binding IamBindingAppendMembers (google::iam::v1::Binding binding, InputIt begin, InputIt end)
 Append members to a google::iam::v1::Binding. More...
 
google::iam::v1::Binding IamBindingSetCondition (google::iam::v1::Binding binding, google::type::Expr condition)
 Set a condition to an google::iam::v1::Binding. More...
 
google::type::Expr Expression (std::string expression, std::string title="", std::string description="", std::string location="")
 Create a google::type::Expr. More...
 
std::ostream & operator<< (std::ostream &stream, google::type::Expr const &e)
 

Function Documentation

◆ Expression()

google::type::Expr google::cloud::bigtable::v0::Expression ( std::string  expression,
std::string  title = "",
std::string  description = "",
std::string  location = "" 
)

Create a google::type::Expr.

This is a textual representation of an expression in Common Expression Language (CEL) syntax.

Parameters
expressionthe expression in Common Expression Language.
titlean optional title for the expression, i.e. a short string describing its purpose.
descriptionan optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
locationan optional string indicating the location of the expression for error reporting, e.g. a file name and a position in the file.

Definition at line 21 of file expr.cc.

◆ IamBinding() [1/6]

template<class InputIt >
google::iam::v1::Binding google::cloud::bigtable::v0::IamBinding ( std::string  role,
InputIt  begin,
InputIt  end 
)

Create a google::iam::v1::Binding.

See also
https://cloud.google.com/resource-manager/reference/rest/Shared.Types/Policy for more information about a IAM policies.
Parameters
rolethe role which is assigned to members
beginiterator pointing to the first member
enditerator pointing to past last member
Returns
The binding

Definition at line 158 of file iam_binding.h.

◆ IamBinding() [2/6]

template<class InputIt >
google::iam::v1::Binding google::cloud::bigtable::v0::IamBinding ( std::string  role,
InputIt  begin,
InputIt  end,
google::type::Expr  condition 
)

Create a google::iam::v1::Binding.

See also
https://cloud.google.com/resource-manager/reference/rest/Shared.Types/Policy for more information about a IAM policies.
Parameters
rolethe role which is assigned to members
beginiterator pointing to the first member
enditerator pointing to past last member
conditionexpression indicating when the binding is effective
Returns
The binding

Definition at line 166 of file iam_binding.h.

◆ IamBinding() [3/6]

google::iam::v1::Binding google::cloud::bigtable::v0::IamBinding ( std::string  role,
std::initializer_list< std::string >  members 
)

Create a google::iam::v1::Binding.

See also
https://cloud.google.com/resource-manager/reference/rest/Shared.Types/Policy for more information about a IAM policies.
Parameters
rolethe role which is assigned to members
membersinitializer_list of members
Returns
The binding

Definition at line 26 of file iam_binding.cc.

◆ IamBinding() [4/6]

google::iam::v1::Binding google::cloud::bigtable::v0::IamBinding ( std::string  role,
std::initializer_list< std::string >  members,
google::type::Expr  condition 
)

Create a google::iam::v1::Binding.

See also
https://cloud.google.com/resource-manager/reference/rest/Shared.Types/Policy for more information about a IAM policies.
Parameters
rolethe role which is assigned to members
membersinitializer_list of members
conditionexpression indicating when the binding is effective
Returns
The binding

Definition at line 31 of file iam_binding.cc.

◆ IamBinding() [5/6]

google::iam::v1::Binding google::cloud::bigtable::v0::IamBinding ( std::string  role,
std::vector< std::string >  members 
)

Create a google::iam::v1::Binding.

See also
https://cloud.google.com/resource-manager/reference/rest/Shared.Types/Policy for more information about a IAM policies.
Parameters
rolethe role which is assigned to members
membersvector of members
Returns
The binding

Definition at line 38 of file iam_binding.cc.

◆ IamBinding() [6/6]

google::iam::v1::Binding google::cloud::bigtable::v0::IamBinding ( std::string  role,
std::vector< std::string >  members,
google::type::Expr  condition 
)

Create a google::iam::v1::Binding.

See also
https://cloud.google.com/resource-manager/reference/rest/Shared.Types/Policy for more information about a IAM policies.
Parameters
rolethe role which is assigned to members
membersvector of members
conditionexpression indicating when the binding is effective
Returns
The binding

Definition at line 48 of file iam_binding.cc.

◆ IamBindingAppendMembers()

template<class InputIt >
google::iam::v1::Binding google::cloud::bigtable::v0::IamBindingAppendMembers ( google::iam::v1::Binding  binding,
InputIt  begin,
InputIt  end 
)

Append members to a google::iam::v1::Binding.

Parameters
bindingthe role which is assigned to members
beginiterator pointing to the first member
enditerator pointing to past last member
Returns
The binding with appended members

Definition at line 138 of file iam_binding.h.

◆ IamBindingSetCondition()

google::iam::v1::Binding google::cloud::bigtable::v0::IamBindingSetCondition ( google::iam::v1::Binding  binding,
google::type::Expr  condition 
)

Set a condition to an google::iam::v1::Binding.

Parameters
bindingthe binding to which the condition is added
conditionthe added condition
Returns
the binding with the condition set

Definition at line 55 of file iam_binding.cc.

◆ IamPolicy() [1/3]

template<class InputIt >
google::iam::v1::Policy google::cloud::bigtable::v0::IamPolicy ( InputIt  first_binding,
InputIt  last_binding,
std::string  etag = "",
std::int32_t  version = 0 
)

Create a google::iam::v1::Policy.

See also
https://cloud.google.com/resource-manager/reference/rest/Shared.Types/Policy for more information about a IAM policies.
https://tools.ietf.org/html/rfc7232#section-2.3 for more information about ETags.
Warning
ETags are currently not used by Cloud Bigtable.
Parameters
first_bindingiterator pointing to the first google::iam::v1::Binding
last_bindingiterator pointing to past last google::iam::v1::Binding
etagused for optimistic concurrency control
versioncurrently unused
Returns
The policy

Definition at line 46 of file iam_policy.h.

◆ IamPolicy() [2/3]

google::iam::v1::Policy google::cloud::bigtable::v0::IamPolicy ( std::initializer_list< google::iam::v1::Binding >  bindings,
std::string  etag = "",
std::int32_t  version = 0 
)

Create a google::iam::v1::Policy.

See also
https://cloud.google.com/resource-manager/reference/rest/Shared.Types/Policy for more information about a IAM policies.
https://tools.ietf.org/html/rfc7232#section-2.3 for more information about ETags.
Warning
ETags are currently not used by Cloud Bigtable.
Parameters
bindingsinitializer_list of google::iam::v1::Binding
etagused for optimistic concurrency control
versioncurrently unused
Returns
The policy

Definition at line 23 of file iam_policy.cc.

◆ IamPolicy() [3/3]

google::iam::v1::Policy google::cloud::bigtable::v0::IamPolicy ( std::vector< google::iam::v1::Binding >  bindings,
std::string  etag = "",
std::int32_t  version = 0 
)

Create a google::iam::v1::Policy.

See also
https://cloud.google.com/resource-manager/reference/rest/Shared.Types/Policy for more information about a IAM policies.
https://tools.ietf.org/html/rfc7232#section-2.3 for more information about ETags.
Warning
ETags are currently not used by Cloud Bigtable.
Parameters
bindingsvector of google::iam::v1::Binding
etagused for optimistic concurrency control
versioncurrently unused
Returns
The policy

Definition at line 29 of file iam_policy.cc.

◆ operator<<() [1/3]

std::ostream & google::cloud::bigtable::v0::operator<< ( std::ostream &  stream,
google::type::Expr const &  e 
)

Definition at line 31 of file expr.cc.

◆ operator<<() [2/3]

std::ostream & google::cloud::bigtable::v0::operator<< ( std::ostream &  os,
google::iam::v1::Policy const &  rhs 
)

Definition at line 41 of file iam_policy.cc.

◆ operator<<() [3/3]

std::ostream & google::cloud::bigtable::v0::operator<< ( std::ostream &  os,
google::iam::v1::Binding const &  binding 
)

Definition at line 61 of file iam_binding.cc.

◆ RemoveBindingFromPolicy()

void google::cloud::bigtable::v0::RemoveBindingFromPolicy ( google::iam::v1::Policy &  policy,
google::protobuf::RepeatedPtrField< google::iam::v1::Binding >::iterator  to_remove 
)

Remove a specific binding from a policy.

Parameters
policythe policy to remove from
to_removethe iterator indicating the binding; it should be retrieved from the mutable_bindings() member

Definition at line 52 of file iam_policy.cc.

◆ RemoveBindingsFromPolicyIf()

template<typename Functor >
size_t google::cloud::bigtable::v0::RemoveBindingsFromPolicyIf ( google::iam::v1::Policy &  policy,
Functor  pred 
)

Remove all bindings matching a predicate from a policy.

Parameters
policythe policy to remove from
predpredicate indicating whether to remove a binding
Template Parameters
Functorthe type of the predicate; it should be invocable with google::iam::v1::Binding const& and return a bool.
Returns
number of bindings removed.

Definition at line 116 of file iam_policy.h.