Class CaptureDefinition
- Namespace
- Cratis.Chronicle.Concepts.Captures
- Assembly
- Cratis.Chronicle.dll
Represents the definition of a capture.
public record CaptureDefinition : IEquatable<CaptureDefinition>
- Inheritance
-
CaptureDefinition
- Implements
- Inherited Members
- Extension Methods
Constructors
CaptureDefinition(CaptureDefinition)
protected CaptureDefinition(CaptureDefinition original)
Parameters
originalCaptureDefinition
CaptureDefinition(CaptureId, CaptureName, SourceDefinition, string, MapDefinition?, IReadOnlyList<AppendDefinition>, IReadOnlyList<NestedDefinition>, IReadOnlyList<ChildrenDefinition>)
Represents the definition of a capture.
public CaptureDefinition(CaptureId Id, CaptureName Name, SourceDefinition Source, string KeyProperty, MapDefinition? Map, IReadOnlyList<AppendDefinition> Appends, IReadOnlyList<NestedDefinition> Nested, IReadOnlyList<ChildrenDefinition> Children)
Parameters
IdCaptureIdThe CaptureId.
NameCaptureNameThe CaptureName.
SourceSourceDefinitionThe source definition.
KeyPropertystringThe identity property used for diffing.
MapMapDefinitionOptional root map definition.
AppendsIReadOnlyList<AppendDefinition>Append definitions on the root scope.
NestedIReadOnlyList<NestedDefinition>Nested object scopes.
ChildrenIReadOnlyList<ChildrenDefinition>Child collection scopes.
Properties
Appends
Append definitions on the root scope.
public IReadOnlyList<AppendDefinition> Appends { get; init; }
Property Value
Children
Child collection scopes.
public IReadOnlyList<ChildrenDefinition> Children { get; init; }
Property Value
EqualityContract
protected virtual Type EqualityContract { get; }
Property Value
Id
The CaptureId.
public CaptureId Id { get; init; }
Property Value
KeyProperty
The identity property used for diffing.
public string KeyProperty { get; init; }
Property Value
Map
Optional root map definition.
public MapDefinition? Map { get; init; }
Property Value
Name
The CaptureName.
public CaptureName Name { get; init; }
Property Value
Nested
Nested object scopes.
public IReadOnlyList<NestedDefinition> Nested { get; init; }
Property Value
Source
The source definition.
public SourceDefinition Source { get; init; }
Property Value
Methods
Deconstruct(out CaptureId, out CaptureName, out SourceDefinition, out string, out MapDefinition?, out IReadOnlyList<AppendDefinition>, out IReadOnlyList<NestedDefinition>, out IReadOnlyList<ChildrenDefinition>)
public void Deconstruct(out CaptureId Id, out CaptureName Name, out SourceDefinition Source, out string KeyProperty, out MapDefinition? Map, out IReadOnlyList<AppendDefinition> Appends, out IReadOnlyList<NestedDefinition> Nested, out IReadOnlyList<ChildrenDefinition> Children)
Parameters
IdCaptureIdNameCaptureNameSourceSourceDefinitionKeyPropertystringMapMapDefinitionAppendsIReadOnlyList<AppendDefinition>NestedIReadOnlyList<NestedDefinition>ChildrenIReadOnlyList<ChildrenDefinition>
Equals(CaptureDefinition?)
public virtual bool Equals(CaptureDefinition? other)
Parameters
otherCaptureDefinition
Returns
Equals(object?)
public override bool Equals(object? obj)
Parameters
objobject
Returns
GetHashCode()
public override int GetHashCode()
Returns
PrintMembers(StringBuilder)
protected virtual bool PrintMembers(StringBuilder builder)
Parameters
builderStringBuilder
Returns
ToString()
public override string ToString()
Returns
Operators
operator ==(CaptureDefinition?, CaptureDefinition?)
public static bool operator ==(CaptureDefinition? left, CaptureDefinition? right)
Parameters
leftCaptureDefinitionrightCaptureDefinition
Returns
operator !=(CaptureDefinition?, CaptureDefinition?)
public static bool operator !=(CaptureDefinition? left, CaptureDefinition? right)
Parameters
leftCaptureDefinitionrightCaptureDefinition