(val persistedModuleObjectValue)
| 645 | } |
| 646 | |
| 647 | func persistedModuleObjectValueHasCallID(val persistedModuleObjectValue) bool { |
| 648 | switch val.Kind { |
| 649 | case persistedModuleObjectValueKindCallID: |
| 650 | return true |
| 651 | case persistedModuleObjectValueKindArray: |
| 652 | for _, item := range val.Items { |
| 653 | if persistedModuleObjectValueHasCallID(item) { |
| 654 | return true |
| 655 | } |
| 656 | } |
| 657 | case persistedModuleObjectValueKindObject: |
| 658 | for _, name := range slices.Sorted(maps.Keys(val.Fields)) { |
| 659 | if persistedModuleObjectValueHasCallID(val.Fields[name]) { |
| 660 | return true |
| 661 | } |
| 662 | } |
| 663 | } |
| 664 | return false |
| 665 | } |
| 666 | |
| 667 | func (obj *ModuleObject) EncodePersistedObject(ctx context.Context, cache dagql.PersistedObjectCache) (dagql.PersistedObjectEncoding, error) { |
| 668 | if obj == nil || len(obj.Fields) == 0 { |
no test coverage detected