tiny.sql.DatabaseMerge
Defined in merge.
API (9)
Actions
Public operations.
Fields and members
Public fields and members.
Source
Source: lib/sql/src/merge.zig:134
zig
pub const DatabaseMerge = struct { allocator: Allocator, value: version.DatabaseValue, conflict_root: version.ConflictRoot, relations: []DatabaseRelationMerge, discovered: []DatabaseConflict, artifacts: []version.ConflictArtifact, pub fn hasConflicts(self: *const DatabaseMerge) bool { return self.conflict_root.count != 0; } pub fn persistConflicts(self: *const DatabaseMerge, history: *history_mod.History) history_mod.Error!void { for (self.artifacts) |artifact| try history.putConflict(artifact); const entries = try self.allocator.alloc(version.ConflictEntry, self.artifacts.len); defer if (entries.len != 0) self.allocator.free(entries); for (self.artifacts, entries) |artifact, *entry| entry.* = artifact.entry(); const persisted = try history.putConflictRoot(entries); if (!version.same(persisted.hash, self.conflict_root.hash) or persisted.count != self.conflict_root.count) return error.InvalidHistory; } pub fn deinit(self: *DatabaseMerge) void { self.value.deinit(); for (self.relations) |*entry| entry.deinit(self.allocator); for (self.artifacts) |*artifact| deinitConflictArtifact(self.allocator, artifact); if (self.relations.len != 0) self.allocator.free(self.relations); if (self.discovered.len != 0) self.allocator.free(self.discovered); if (self.artifacts.len != 0) self.allocator.free(self.artifacts); self.* = undefined; }};Source: lib/sql/src/root.zig:248
zig
pub const DatabaseMerge = merge.DatabaseMerge;Audit
| Definitions | 4 |
|---|---|
| Public names | 8 |
| Members | 6 |
| Version | 26.7.0 |
| Revision | daab053ee433 |