Documentation
¶
Index ¶
- Variables
- type Collection
- func (pgc *Collection) AddConflict(ctx context.Context, conflict Conflict) error
- func (pgc *Collection) DeserializeRootObject(ctx context.Context, data []byte) (objinterface.RootObject, error)
- func (pgc *Collection) DiffRootObjects(ctx context.Context, fromHash string, ours objinterface.RootObject, ...) ([]objinterface.RootObjectDiff, objinterface.RootObject, error)
- func (pgc *Collection) DropConflict(ctx context.Context, conflictIDs ...id.Id) error
- func (pgc *Collection) DropRootObject(ctx context.Context, identifier id.Id) error
- func (pgc *Collection) GetConflict(ctx context.Context, conflictID id.Id) (Conflict, error)
- func (pgc *Collection) GetFieldType(ctx context.Context, fieldName string) *pgtypes.DoltgresType
- func (pgc *Collection) GetID() objinterface.RootObjectID
- func (pgc *Collection) GetRootObject(ctx context.Context, identifier id.Id) (objinterface.RootObject, bool, error)
- func (*Collection) HandleMerge(ctx context.Context, mro merge.MergeRootObject) (doltdb.RootObject, *merge.MergeStats, error)
- func (pgc *Collection) HasConflict(ctx context.Context, conflictID id.Id) bool
- func (pgc *Collection) HasRootObject(ctx context.Context, identifier id.Id) (bool, error)
- func (pgc *Collection) IDToTableName(identifier id.Id) doltdb.TableName
- func (pgc *Collection) IterAll(ctx context.Context, ...) error
- func (pgc *Collection) IterIDs(ctx context.Context, callback func(identifier id.Id) (stop bool, err error)) error
- func (pgc *Collection) IterateConflicts(ctx context.Context, callback func(conflict Conflict) (stop bool, err error)) error
- func (*Collection) LoadCollection(ctx context.Context, root objinterface.RootValue) (objinterface.Collection, error)
- func (pgc *Collection) PutRootObject(ctx context.Context, rootObj objinterface.RootObject) error
- func (pgc *Collection) RenameRootObject(ctx context.Context, oldName id.Id, newName id.Id) error
- func (pgc *Collection) ResolveName(ctx context.Context, name doltdb.TableName) (doltdb.TableName, id.Id, error)
- func (*Collection) ResolveNameFromObjects(ctx context.Context, name doltdb.TableName, ...) (doltdb.TableName, id.Id, error)
- func (*Collection) Serializer() objinterface.RootObjectSerializer
- func (pgc *Collection) TableNameToID(name doltdb.TableName) id.Id
- func (pgc *Collection) UpdateField(ctx context.Context, rootObject objinterface.RootObject, fieldName string, ...) (objinterface.RootObject, error)
- type Conflict
- func (conflict Conflict) DiffCount(ctx *sql.Context) (int, error)
- func (conflict Conflict) Diffs(ctx context.Context) ([]objinterface.RootObjectDiff, objinterface.RootObject, error)
- func (conflict Conflict) FieldType(ctx context.Context, name string) *pgtypes.DoltgresType
- func (conflict Conflict) GetContainedRootObjectID() objinterface.RootObjectID
- func (conflict Conflict) GetID() id.Id
- func (conflict Conflict) GetRootObjectID() objinterface.RootObjectID
- func (conflict Conflict) HashOf(ctx context.Context) (hash.Hash, error)
- func (conflict Conflict) Name() doltdb.TableName
- func (conflict Conflict) RemoveDiffs(ctx *sql.Context, diffs []doltdb.RootObjectDiff) (doltdb.ConflictRootObject, error)
- func (conflict Conflict) Rows(ctx *sql.Context) (sql.RowIter, error)
- func (conflict Conflict) Schema(originatingTableName string) sql.Schema
- func (conflict Conflict) Serialize(ctx context.Context) (_ []byte, err error)
- func (conflict Conflict) UpdateField(ctx *sql.Context, o doltdb.RootObjectDiff, n doltdb.RootObjectDiff) (doltdb.ConflictRootObject, error)
Constants ¶
This section is empty.
Variables ¶
var DeserializeRootObject = func(ctx context.Context, rootObjID objinterface.RootObjectID, data []byte) (objinterface.RootObject, error) { return nil, errors.New("DeserializeRootObject was never initialized") }
DeserializeRootObject handles root object deserialization, and is declared in a different package. It is assigned here by an Init function to get around import cycles.
var DiffRootObjects = func(ctx context.Context, rootObjID objinterface.RootObjectID, fromHash string, ours, theirs, ancestor objinterface.RootObject) ([]objinterface.RootObjectDiff, objinterface.RootObject, error) { return nil, nil, errors.New("DiffRootObjects was never initialized") }
DiffRootObjects handles conflict diffs, and is declared in a different package. It is assigned here by an Init function to get around import cycles.
var GetFieldType = func(ctx context.Context, rootObjID objinterface.RootObjectID, fieldName string) *pgtypes.DoltgresType { panic("GetFieldType was never initialized") }
GetFieldType handles type fetching for fields, and is declared in a different package. It is assigned here by an Init function to get around import cycles.
var ResolveNameExternal = func(ctx context.Context, name doltdb.TableName, rootObjects []objinterface.RootObject) (doltdb.TableName, id.Id, error) { panic("ResolveNameExternal was never initialized") }
ResolveNameExternal handles name resolution across all collection types, and is declared in a different package. It is assigned here by an Init function to get around import cycles.
var UpdateField = func(ctx context.Context, rootObjID objinterface.RootObjectID, rootObject objinterface.RootObject, fieldName string, newValue any) (objinterface.RootObject, error) { return nil, errors.New("UpdateField was never initialized") }
UpdateField handles updating fields in a root object, and is declared in a different package. It is assigned here by an Init function to get around import cycles.
Functions ¶
This section is empty.
Types ¶
type Collection ¶
type Collection struct {
objinterface.RootObjectMap
// contains filtered or unexported fields
}
Collection contains a collection of conflicts.
func LoadConflicts ¶
func LoadConflicts(ctx context.Context, root objinterface.RootValue) (*Collection, error)
LoadConflicts loads the conflicts collection from the given root.
func NewCollection ¶
func NewCollection(ctx context.Context, rom objinterface.RootObjectMap) (*Collection, error)
NewCollection returns a new Collection.
func (*Collection) AddConflict ¶
func (pgc *Collection) AddConflict(ctx context.Context, conflict Conflict) error
AddConflict adds a new conflict.
func (*Collection) DeserializeRootObject ¶
func (pgc *Collection) DeserializeRootObject(ctx context.Context, data []byte) (objinterface.RootObject, error)
DeserializeRootObject implements the interface objinterface.Collection.
func (*Collection) DiffRootObjects ¶
func (pgc *Collection) DiffRootObjects(ctx context.Context, fromHash string, ours objinterface.RootObject, theirs objinterface.RootObject, ancestor objinterface.RootObject) ([]objinterface.RootObjectDiff, objinterface.RootObject, error)
DiffRootObjects implements the interface objinterface.Collection.
func (*Collection) DropConflict ¶
DropConflict drops an existing conflict.
func (*Collection) DropRootObject ¶
DropRootObject implements the interface objinterface.Collection.
func (*Collection) GetConflict ¶
GetConflict returns the conflict with the given ID. Returns a conflict with an invalid ID if it cannot be found (Conflict.ID.IsValid() == false).
func (*Collection) GetFieldType ¶
func (pgc *Collection) GetFieldType(ctx context.Context, fieldName string) *pgtypes.DoltgresType
GetFieldType implements the interface objinterface.Collection.
func (*Collection) GetID ¶
func (pgc *Collection) GetID() objinterface.RootObjectID
GetID implements the interface objinterface.Collection.
func (*Collection) GetRootObject ¶
func (pgc *Collection) GetRootObject(ctx context.Context, identifier id.Id) (objinterface.RootObject, bool, error)
GetRootObject implements the interface objinterface.Collection.
func (*Collection) HandleMerge ¶
func (*Collection) HandleMerge(ctx context.Context, mro merge.MergeRootObject) (doltdb.RootObject, *merge.MergeStats, error)
HandleMerge implements the interface objinterface.Collection.
func (*Collection) HasConflict ¶
HasConflict returns whether the conflict is present.
func (*Collection) HasRootObject ¶
HasRootObject implements the interface objinterface.Collection.
func (*Collection) IDToTableName ¶
func (pgc *Collection) IDToTableName(identifier id.Id) doltdb.TableName
IDToTableName implements the interface objinterface.Collection.
func (*Collection) IterAll ¶
func (pgc *Collection) IterAll(ctx context.Context, callback func(rootObj objinterface.RootObject) (stop bool, err error)) error
IterAll implements the interface objinterface.Collection.
func (*Collection) IterIDs ¶
func (pgc *Collection) IterIDs(ctx context.Context, callback func(identifier id.Id) (stop bool, err error)) error
IterIDs implements the interface objinterface.Collection.
func (*Collection) IterateConflicts ¶
func (pgc *Collection) IterateConflicts(ctx context.Context, callback func(conflict Conflict) (stop bool, err error)) error
IterateConflicts iterates over all conflicts in the collection.
func (*Collection) LoadCollection ¶
func (*Collection) LoadCollection(ctx context.Context, root objinterface.RootValue) (objinterface.Collection, error)
LoadCollection implements the interface objinterface.Collection.
func (*Collection) PutRootObject ¶
func (pgc *Collection) PutRootObject(ctx context.Context, rootObj objinterface.RootObject) error
PutRootObject implements the interface objinterface.Collection.
func (*Collection) RenameRootObject ¶
RenameRootObject implements the interface objinterface.Collection.
func (*Collection) ResolveName ¶
func (pgc *Collection) ResolveName(ctx context.Context, name doltdb.TableName) (doltdb.TableName, id.Id, error)
ResolveName implements the interface objinterface.Collection.
func (*Collection) ResolveNameFromObjects ¶
func (*Collection) ResolveNameFromObjects(ctx context.Context, name doltdb.TableName, rootObjects []objinterface.RootObject) (doltdb.TableName, id.Id, error)
ResolveNameFromObjects implements the interface objinterface.Collection.
func (*Collection) Serializer ¶
func (*Collection) Serializer() objinterface.RootObjectSerializer
Serializer implements the interface objinterface.Collection.
func (*Collection) TableNameToID ¶
func (pgc *Collection) TableNameToID(name doltdb.TableName) id.Id
TableNameToID implements the interface objinterface.Collection.
func (*Collection) UpdateField ¶
func (pgc *Collection) UpdateField(ctx context.Context, rootObject objinterface.RootObject, fieldName string, newValue any) (objinterface.RootObject, error)
UpdateField implements the interface objinterface.Collection.
type Conflict ¶
type Conflict struct {
ID id.Id
FromHash string
RootObjectID objinterface.RootObjectID
Ours objinterface.RootObject
Theirs objinterface.RootObject
Ancestor objinterface.RootObject
}
Conflict represents a root object conflict.
func DeserializeConflict ¶
DeserializeConflict returns the Conflict that was serialized in the byte slice. Returns an empty Conflict (invalid ID) if data is nil or empty.
func (Conflict) Diffs ¶
func (conflict Conflict) Diffs(ctx context.Context) ([]objinterface.RootObjectDiff, objinterface.RootObject, error)
Diffs implements the interface objinterface.Conflict.
func (Conflict) GetContainedRootObjectID ¶
func (conflict Conflict) GetContainedRootObjectID() objinterface.RootObjectID
GetContainedRootObjectID implements the interface objinterface.RootObject.
func (Conflict) GetRootObjectID ¶
func (conflict Conflict) GetRootObjectID() objinterface.RootObjectID
GetRootObjectID implements the interface objinterface.RootObject.
func (Conflict) RemoveDiffs ¶
func (conflict Conflict) RemoveDiffs(ctx *sql.Context, diffs []doltdb.RootObjectDiff) (doltdb.ConflictRootObject, error)
RemoveDiffs implements the interface doltdb.ConflictRootObject.
func (Conflict) Serialize ¶
Serialize returns the Conflict as a byte slice. If the Conflict is invalid, then this returns a nil slice.
func (Conflict) UpdateField ¶
func (conflict Conflict) UpdateField(ctx *sql.Context, o doltdb.RootObjectDiff, n doltdb.RootObjectDiff) (doltdb.ConflictRootObject, error)
UpdateField implements the interface doltdb.ConflictRootObject.