pub enum Change {
Show 13 variants
CreateRole {
name: String,
state: RoleState,
},
AlterRole {
name: String,
attributes: Vec<RoleAttribute>,
},
SetComment {
name: String,
comment: Option<String>,
},
Grant {
role: String,
privileges: BTreeSet<Privilege>,
object_type: ObjectType,
schema: Option<String>,
name: Option<String>,
},
Revoke {
role: String,
privileges: BTreeSet<Privilege>,
object_type: ObjectType,
schema: Option<String>,
name: Option<String>,
},
SetDefaultPrivilege {
owner: String,
schema: String,
on_type: ObjectType,
grantee: String,
privileges: BTreeSet<Privilege>,
},
RevokeDefaultPrivilege {
owner: String,
schema: String,
on_type: ObjectType,
grantee: String,
privileges: BTreeSet<Privilege>,
},
AddMember {
role: String,
member: String,
inherit: bool,
admin: bool,
},
RemoveMember {
role: String,
member: String,
},
ReassignOwned {
from_role: String,
to_role: String,
},
DropOwned {
role: String,
},
TerminateSessions {
role: String,
},
DropRole {
name: String,
},
}Expand description
A single change to be applied to the database.
Changes are produced in dependency order by diff:
- Create roles (before granting anything to them)
- Alter roles (attribute changes)
- Grant privileges
- Set default privileges
- Remove memberships
- Add memberships
- Revoke default privileges
- Revoke privileges
- Drop roles (after revoking everything from them)
Variants§
CreateRole
Create a new role with the given attributes.
AlterRole
Alter an existing role’s attributes.
SetComment
Update a role’s comment (via COMMENT ON ROLE).
Grant
Grant privileges on an object to a role.
Fields
§
object_type: ObjectTypeRevoke
Revoke privileges on an object from a role.
Fields
§
object_type: ObjectTypeSetDefaultPrivilege
Set default privileges (ALTER DEFAULT PRIVILEGES … GRANT …).
Fields
§
on_type: ObjectTypeRevokeDefaultPrivilege
Revoke default privileges (ALTER DEFAULT PRIVILEGES … REVOKE …).
Fields
§
on_type: ObjectTypeAddMember
Grant membership (GRANT role TO member).
RemoveMember
Revoke membership (REVOKE role FROM member).
ReassignOwned
Reassign owned objects to a successor role before drop.
DropOwned
Drop owned objects and revoke remaining privileges before drop.
TerminateSessions
Terminate other active sessions before dropping a role.
DropRole
Drop a role.
Trait Implementations§
impl Eq for Change
impl StructuralPartialEq for Change
Auto Trait Implementations§
impl Freeze for Change
impl RefUnwindSafe for Change
impl Send for Change
impl Sync for Change
impl Unpin for Change
impl UnsafeUnpin for Change
impl UnwindSafe for Change
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.