Compose D&D location tracking modules
This commit is contained in:
@@ -25,6 +25,12 @@ func registerEvidence(registry *pipeline.ArtifactEvidenceRegistry) error {
|
||||
{name: "scene descriptions evidence", register: func() error {
|
||||
return pipeline.RegisterArtifactEvidence(registry, dnd.SceneDescriptionListKind, sceneDescriptionEvidence)
|
||||
}},
|
||||
{name: "locations evidence", register: func() error {
|
||||
return pipeline.RegisterArtifactEvidence(registry, dnd.LocationListKind, locationEvidence)
|
||||
}},
|
||||
{name: "location occurrences evidence", register: func() error {
|
||||
return pipeline.RegisterArtifactEvidence(registry, dnd.LocationOccurrenceListKind, locationOccurrenceEvidence)
|
||||
}},
|
||||
})
|
||||
}
|
||||
|
||||
@@ -83,3 +89,19 @@ func sceneDescriptionEvidence(value dnd.SceneDescriptionList) []source.SourceRef
|
||||
}
|
||||
return refs
|
||||
}
|
||||
|
||||
func locationEvidence(value dnd.LocationList) []source.SourceRef {
|
||||
var refs []source.SourceRef
|
||||
for _, location := range value.Locations {
|
||||
refs = append(refs, location.SourceRefs...)
|
||||
}
|
||||
return append([]source.SourceRef(nil), refs...)
|
||||
}
|
||||
|
||||
func locationOccurrenceEvidence(value dnd.LocationOccurrenceList) []source.SourceRef {
|
||||
var refs []source.SourceRef
|
||||
for _, occurrence := range value.Occurrences {
|
||||
refs = append(refs, occurrence.SourceRefs...)
|
||||
}
|
||||
return append([]source.SourceRef(nil), refs...)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user