MCPcopy Create free account
hub / github.com/brimdata/super / buildValue

Function buildValue

sup/builder.go:27–54  ·  view source on GitHub ↗
(b *scode.Builder, val Value)

Source from the content-addressed store, hash-verified

25}
26
27func buildValue(b *scode.Builder, val Value) error {
28 switch val := val.(type) {
29 case *Primitive:
30 return BuildPrimitive(b, *val)
31 case *Record:
32 return buildRecord(b, val)
33 case *Array:
34 return buildArray(b, val)
35 case *Set:
36 return buildSet(b, val)
37 case *Union:
38 return buildUnion(b, val)
39 case *Map:
40 return buildMap(b, val)
41 case *Enum:
42 return buildEnum(b, val)
43 case *TypeValue:
44 return buildTypeValue(b, val)
45 case *Error:
46 return buildValue(b, val.Value)
47 case *Fusion:
48 return buildFusion(b, val)
49 case *Null:
50 b.Append(nil)
51 return nil
52 }
53 return fmt.Errorf("unknown ast type: %T", val)
54}
55
56func BuildPrimitive(b *scode.Builder, val Primitive) error {
57 switch super.TypeUnder(val.Type).(type) {

Callers 7

BuildFunction · 0.85
buildRecordFunction · 0.85
buildArrayFunction · 0.85
buildSetFunction · 0.85
buildMapFunction · 0.85
buildUnionFunction · 0.85
buildFusionFunction · 0.85

Calls 10

BuildPrimitiveFunction · 0.85
buildRecordFunction · 0.85
buildArrayFunction · 0.85
buildSetFunction · 0.85
buildUnionFunction · 0.85
buildMapFunction · 0.85
buildEnumFunction · 0.85
buildTypeValueFunction · 0.85
buildFusionFunction · 0.85
AppendMethod · 0.45

Tested by

no test coverage detected