Edge class

A relationship between two revisions in the Kumiho system.

Edges track dependencies, derivations, and references between revisions. They form a directed graph that can be traversed to understand asset relationships and impact analysis. The Dart SDK exposes edges as a lightweight model object so dependency graph tooling can be built without importing generated protobuf types.

// Create an edge
final edge = await revision.createEdge(texture, EdgeType.dependsOn);

// Query edges
final edges = await revision.getEdges();
for (final edge in edges) {
  print('${edge.sourceKref.uri} ${edge.edgeType} ${edge.targetKref.uri}');
}
Inheritance

Constructors

Edge(Edge response, dynamic client)
Creates an Edge from a protobuf response.

Properties

author String
The user ID who created the edge.
latefinal
client → dynamic
The client instance for making API calls.
finalinherited
createdAt String?
ISO timestamp when the edge was created.
latefinal
edgeType String
The type of relationship (e.g., "DEPENDS_ON", "DERIVED_FROM").
latefinal
hashCode int
The hash code for this object.
no setterinherited
metadata Map<String, String>
Custom metadata key-value pairs.
latefinal
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
sourceKref Kref
Reference to the source revision.
latefinal
targetKref Kref
Reference to the target revision.
latefinal
username String
Display name of the creator.
latefinal

Methods

delete() Future<void>
Deletes this edge.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
override

Operators

operator ==(Object other) bool
The equality operator.
inherited