in arrow/internal/arrdata/arrdata.go [701:821]
func makeMapsRecords() []array.Record {
mem := memory.NewGoAllocator()
dtype := arrow.MapOf(arrow.PrimitiveTypes.Int32, arrow.BinaryTypes.String)
dtype.KeysSorted = true
schema := arrow.NewSchema([]arrow.Field{{Name: "map_int_utf8", Type: dtype, Nullable: true}}, nil)
mask := []bool{true, false, false, true, true}
chunks := [][]array.Interface{
{
mapOf(mem, dtype.KeysSorted, []array.Interface{
structOf(mem, dtype.ValueType(), [][]array.Interface{
{
arrayOf(mem, []int32{-1, -2, -3, -4, -5}, nil),
arrayOf(mem, []string{"111", "222", "333", "444", "555"}, mask[:5]),
},
{
arrayOf(mem, []int32{-1, -2, -3, -4, -5}, nil),
arrayOf(mem, []string{"1111", "1222", "1333", "1444", "1555"}, mask[:5]),
},
{
arrayOf(mem, []int32{-1, -2, -3, -4, -5}, nil),
arrayOf(mem, []string{"2111", "2222", "2333", "2444", "2555"}, mask[:5]),
},
{
arrayOf(mem, []int32{-1, -2, -3, -4, -5}, nil),
arrayOf(mem, []string{"3111", "3222", "3333", "3444", "3555"}, mask[:5]),
},
{
arrayOf(mem, []int32{-1, -2, -3, -4, -5}, nil),
arrayOf(mem, []string{"4111", "4222", "4333", "4444", "4555"}, mask[:5]),
},
}, nil),
structOf(mem, dtype.ValueType(), [][]array.Interface{
{
arrayOf(mem, []int32{1, 2, 3, 4, 5}, nil),
arrayOf(mem, []string{"-111", "-222", "-333", "-444", "-555"}, mask[:5]),
},
{
arrayOf(mem, []int32{1, 2, 3, 4, 5}, nil),
arrayOf(mem, []string{"-1111", "-1222", "-1333", "-1444", "-1555"}, mask[:5]),
},
{
arrayOf(mem, []int32{1, 2, 3, 4, 5}, nil),
arrayOf(mem, []string{"-2111", "-2222", "-2333", "-2444", "-2555"}, mask[:5]),
},
{
arrayOf(mem, []int32{1, 2, 3, 4, 5}, nil),
arrayOf(mem, []string{"-3111", "-3222", "-3333", "-3444", "-3555"}, mask[:5]),
},
{
arrayOf(mem, []int32{1, 2, 3, 4, 5}, nil),
arrayOf(mem, []string{"-4111", "-4222", "-4333", "-4444", "-4555"}, mask[:5]),
},
}, nil),
}, []bool{true, false, true, true, true}),
},
{
mapOf(mem, dtype.KeysSorted, []array.Interface{
structOf(mem, dtype.ValueType(), [][]array.Interface{
{
arrayOf(mem, []int32{1, 2, 3, 4, 5}, nil),
arrayOf(mem, []string{"-111", "-222", "-333", "-444", "-555"}, mask[:5]),
},
{
arrayOf(mem, []int32{1, 2, 3, 4, 5}, nil),
arrayOf(mem, []string{"-1111", "-1222", "-1333", "-1444", "-1555"}, mask[:5]),
},
{
arrayOf(mem, []int32{1, 2, 3, 4, 5}, nil),
arrayOf(mem, []string{"-2111", "-2222", "-2333", "-2444", "-2555"}, mask[:5]),
},
{
arrayOf(mem, []int32{1, 2, 3, 4, 5}, nil),
arrayOf(mem, []string{"-3111", "-3222", "-3333", "-3444", "-3555"}, mask[:5]),
},
{
arrayOf(mem, []int32{1, 2, 3, 4, 5}, nil),
arrayOf(mem, []string{"-4111", "-4222", "-4333", "-4444", "-4555"}, mask[:5]),
},
}, nil),
structOf(mem, dtype.ValueType(), [][]array.Interface{
{
arrayOf(mem, []int32{-1, -2, -3, -4, -5}, nil),
arrayOf(mem, []string{"111", "222", "333", "444", "555"}, mask[:5]),
},
{
arrayOf(mem, []int32{-1, -2, -3, -4, -5}, nil),
arrayOf(mem, []string{"1111", "1222", "1333", "1444", "1555"}, mask[:5]),
},
{
arrayOf(mem, []int32{-1, -2, -3, -4, -5}, nil),
arrayOf(mem, []string{"2111", "2222", "2333", "2444", "2555"}, mask[:5]),
},
{
arrayOf(mem, []int32{-1, -2, -3, -4, -5}, nil),
arrayOf(mem, []string{"3111", "3222", "3333", "3444", "3555"}, mask[:5]),
},
{
arrayOf(mem, []int32{-1, -2, -3, -4, -5}, nil),
arrayOf(mem, []string{"4111", "4222", "4333", "4444", "4555"}, mask[:5]),
},
}, nil),
}, []bool{true, false, true, true, true}),
},
}
defer func() {
for _, chunk := range chunks {
for _, col := range chunk {
col.Release()
}
}
}()
recs := make([]array.Record, len(chunks))
for i, chunk := range chunks {
recs[i] = array.NewRecord(schema, chunk, -1)
}
return recs
}