MCPcopy Index your code
hub / github.com/dagger/dagger / EncodePersistedObject

Method EncodePersistedObject

core/codegen.go:31–54  ·  view source on GitHub ↗
(ctx context.Context, cache dagql.PersistedObjectCache)

Source from the content-addressed store, hash-verified

29}
30
31func (code *GeneratedCode) EncodePersistedObject(ctx context.Context, cache dagql.PersistedObjectCache) (dagql.PersistedObjectEncoding, error) {
32 _ = ctx
33 if code == nil {
34 return dagql.PersistedObjectEncoding{}, fmt.Errorf("encode persisted generated code: nil generated code")
35 }
36 if code.Code.Self() == nil {
37 return dagql.PersistedObjectEncoding{}, fmt.Errorf("encode persisted generated code: missing code directory")
38 }
39
40 codeID, err := encodePersistedObjectRef(cache, code.Code, "generated code directory")
41 if err != nil {
42 return dagql.PersistedObjectEncoding{}, err
43 }
44
45 payloadJSON, err := json.Marshal(persistedGeneratedCodePayload{
46 CodeResultID: codeID,
47 VCSGeneratedPaths: slices.Clone(code.VCSGeneratedPaths),
48 VCSIgnoredPaths: slices.Clone(code.VCSIgnoredPaths),
49 })
50 if err != nil {
51 return dagql.PersistedObjectEncoding{}, fmt.Errorf("marshal persisted generated code payload: %w", err)
52 }
53 return encodePersistedObjectRawJSON(payloadJSON), nil
54}
55
56func (*GeneratedCode) DecodePersistedObject(ctx context.Context, dag *dagql.Server, _ uint64, _ *dagql.ResultCall, payload json.RawMessage) (dagql.Typed, error) {
57 var persisted persistedGeneratedCodePayload

Callers

nothing calls this directly

Calls 5

encodePersistedObjectRefFunction · 0.85
SelfMethod · 0.80
MarshalMethod · 0.65
CloneMethod · 0.65

Tested by

no test coverage detected