Coverage Report

Created: 2026-07-27 12:50

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/exprs/short_circuit_util.h
Line
Count
Source
1
// Licensed to the Apache Software Foundation (ASF) under one
2
// or more contributor license agreements.  See the NOTICE file
3
// distributed with this work for additional information
4
// regarding copyright ownership.  The ASF licenses this file
5
// to you under the Apache License, Version 2.0 (the
6
// "License"); you may not use this file except in compliance
7
// with the License.  You may obtain a copy of the License at
8
//
9
//   http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing,
12
// software distributed under the License is distributed on an
13
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
// KIND, either express or implied.  See the License for the
15
// specific language governing permissions and limitations
16
// under the License.
17
18
#pragma once
19
#include "core/block/column_with_type_and_name.h"
20
#include "core/column/column.h"
21
#include "core/column/column_const.h"
22
#include "core/column/column_nullable.h"
23
#include "core/column/column_vector.h"
24
#include "core/field.h"
25
#include "exprs/vexpr.h"
26
27
namespace doris {
28
29
// Used to store a column along with its null_map and whether it is a const column.
30
// If the input column is not nullable, then null_map will be nullptr.
31
struct ColumnNullConstView {
32
    const IColumn& column;
33
    const NullMap* null_map;
34
    const bool is_const;
35
36
6.67k
    static ColumnNullConstView create(const ColumnPtr& column_ptr) {
37
6.67k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
38
39
6.67k
        if (const auto* nullable_column =
40
6.67k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
41
1.79k
            return ColumnNullConstView {.column = nullable_column->get_nested_column(),
42
1.79k
                                        .null_map = &nullable_column->get_null_map_data(),
43
1.79k
                                        .is_const = is_const};
44
4.88k
        } else {
45
4.88k
            return ColumnNullConstView {
46
4.88k
                    .column = *from_data_column, .null_map = nullptr, .is_const = is_const};
47
4.88k
        }
48
6.67k
    }
49
};
50
51
// Scalar version stores a reference to the actual data type array for convenient subsequent operations.
52
template <PrimitiveType PType>
53
struct ColumnNullConstViewScalar {
54
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
55
    using ArrayType = typename ColumnType::Container;
56
57
    const ArrayType& data;
58
    const NullMap* null_map;
59
    const bool is_const;
60
61
24.8k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
24.8k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
24.8k
        const NullMap* null_map = nullptr;
64
24.8k
        const ArrayType* data = nullptr;
65
24.8k
        if (const auto* nullable_column =
66
24.8k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
7.80k
            null_map = &nullable_column->get_null_map_data();
68
7.80k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
7.80k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
16.9k
        } else {
71
16.9k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
16.9k
        }
73
74
24.8k
        return ColumnNullConstViewScalar {
75
24.8k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
24.8k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
10.8k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
10.8k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
10.8k
        const NullMap* null_map = nullptr;
64
10.8k
        const ArrayType* data = nullptr;
65
10.8k
        if (const auto* nullable_column =
66
10.8k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
5.46k
            null_map = &nullable_column->get_null_map_data();
68
5.46k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
5.46k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
5.46k
        } else {
71
5.36k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
5.36k
        }
73
74
10.8k
        return ColumnNullConstViewScalar {
75
10.8k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
10.8k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
10.8k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
10.8k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
10.8k
        const NullMap* null_map = nullptr;
64
10.8k
        const ArrayType* data = nullptr;
65
10.8k
        if (const auto* nullable_column =
66
10.8k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
31
            null_map = &nullable_column->get_null_map_data();
68
31
            const auto& nested_from_column = nullable_column->get_nested_column();
69
31
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
10.8k
        } else {
71
10.8k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
10.8k
        }
73
74
10.8k
        return ColumnNullConstViewScalar {
75
10.8k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
10.8k
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
2.20k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
2.20k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
2.20k
        const NullMap* null_map = nullptr;
64
2.20k
        const ArrayType* data = nullptr;
65
2.20k
        if (const auto* nullable_column =
66
2.20k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
1.91k
            null_map = &nullable_column->get_null_map_data();
68
1.91k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
1.91k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
1.91k
        } else {
71
297
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
297
        }
73
74
2.20k
        return ColumnNullConstViewScalar {
75
2.20k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
2.20k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
255
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
255
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
255
        const NullMap* null_map = nullptr;
64
255
        const ArrayType* data = nullptr;
65
255
        if (const auto* nullable_column =
66
255
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
123
            null_map = &nullable_column->get_null_map_data();
68
123
            const auto& nested_from_column = nullable_column->get_nested_column();
69
123
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
132
        } else {
71
132
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
132
        }
73
74
255
        return ColumnNullConstViewScalar {
75
255
                .data = *data, .null_map = null_map, .is_const = is_const};
76
255
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
202
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
202
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
202
        const NullMap* null_map = nullptr;
64
202
        const ArrayType* data = nullptr;
65
202
        if (const auto* nullable_column =
66
202
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
127
            null_map = &nullable_column->get_null_map_data();
68
127
            const auto& nested_from_column = nullable_column->get_nested_column();
69
127
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
127
        } else {
71
75
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
75
        }
73
74
202
        return ColumnNullConstViewScalar {
75
202
                .data = *data, .null_map = null_map, .is_const = is_const};
76
202
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
47
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
47
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
47
        const NullMap* null_map = nullptr;
64
47
        const ArrayType* data = nullptr;
65
47
        if (const auto* nullable_column =
66
47
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
28
            null_map = &nullable_column->get_null_map_data();
68
28
            const auto& nested_from_column = nullable_column->get_nested_column();
69
28
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
28
        } else {
71
19
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
19
        }
73
74
47
        return ColumnNullConstViewScalar {
75
47
                .data = *data, .null_map = null_map, .is_const = is_const};
76
47
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
279
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
279
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
279
        const NullMap* null_map = nullptr;
64
279
        const ArrayType* data = nullptr;
65
279
        if (const auto* nullable_column =
66
279
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
72
            null_map = &nullable_column->get_null_map_data();
68
72
            const auto& nested_from_column = nullable_column->get_nested_column();
69
72
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
207
        } else {
71
207
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
207
        }
73
74
279
        return ColumnNullConstViewScalar {
75
279
                .data = *data, .null_map = null_map, .is_const = is_const};
76
279
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
5
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
5
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
5
        const NullMap* null_map = nullptr;
64
5
        const ArrayType* data = nullptr;
65
5
        if (const auto* nullable_column =
66
5
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
5
            null_map = &nullable_column->get_null_map_data();
68
5
            const auto& nested_from_column = nullable_column->get_nested_column();
69
5
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
5
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
5
        return ColumnNullConstViewScalar {
75
5
                .data = *data, .null_map = null_map, .is_const = is_const};
76
5
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
66
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
66
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
66
        const NullMap* null_map = nullptr;
64
66
        const ArrayType* data = nullptr;
65
66
        if (const auto* nullable_column =
66
66
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
12
            null_map = &nullable_column->get_null_map_data();
68
12
            const auto& nested_from_column = nullable_column->get_nested_column();
69
12
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
54
        } else {
71
54
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
54
        }
73
74
66
        return ColumnNullConstViewScalar {
75
66
                .data = *data, .null_map = null_map, .is_const = is_const};
76
66
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
26
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
26
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
26
        const NullMap* null_map = nullptr;
64
26
        const ArrayType* data = nullptr;
65
26
        if (const auto* nullable_column =
66
26
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
21
            null_map = &nullable_column->get_null_map_data();
68
21
            const auto& nested_from_column = nullable_column->get_nested_column();
69
21
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
21
        } else {
71
5
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
5
        }
73
74
26
        return ColumnNullConstViewScalar {
75
26
                .data = *data, .null_map = null_map, .is_const = is_const};
76
26
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE12EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE27EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
16
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
16
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
16
        const NullMap* null_map = nullptr;
64
16
        const ArrayType* data = nullptr;
65
16
        if (const auto* nullable_column =
66
16
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
16
            null_map = &nullable_column->get_null_map_data();
68
16
            const auto& nested_from_column = nullable_column->get_nested_column();
69
16
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
16
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
16
        return ColumnNullConstViewScalar {
75
16
                .data = *data, .null_map = null_map, .is_const = is_const};
76
16
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE42EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
4
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
4
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
4
        const NullMap* null_map = nullptr;
64
4
        const ArrayType* data = nullptr;
65
4
        if (const auto* nullable_column =
66
4
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
4
            null_map = &nullable_column->get_null_map_data();
68
4
            const auto& nested_from_column = nullable_column->get_nested_column();
69
4
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
4
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
4
        return ColumnNullConstViewScalar {
75
4
                .data = *data, .null_map = null_map, .is_const = is_const};
76
4
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE36EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE37EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
77
};
78
79
// Used to store a mutable column along with its null_map.
80
// If the input column is not nullable, then null_map will be nullptr.
81
struct MutableColumnNullView {
82
    IColumn& column;
83
    NullMap* null_map;
84
1.18k
    static MutableColumnNullView create(const MutableColumnPtr& column_ptr) {
85
1.18k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
86
717
            return MutableColumnNullView {.column = nullable_column->get_nested_column(),
87
717
                                          .null_map = &nullable_column->get_null_map_data()};
88
717
        } else {
89
467
            return MutableColumnNullView {.column = *column_ptr, .null_map = nullptr};
90
467
        }
91
1.18k
    }
92
93
14.3k
    void insert_from(const ColumnNullConstView& from, size_t i) {
94
14.3k
        auto index = index_check_const(i, from.is_const);
95
14.3k
        column.insert_from(from.column, index);
96
14.3k
        if (null_map != nullptr && from.null_map != nullptr) {
97
9.65k
            null_map->push_back((*from.null_map)[index]);
98
9.65k
        } else if (null_map != nullptr) {
99
            // from is not nullable, so insert 0
100
3.77k
            null_map->push_back(0);
101
3.77k
        }
102
14.3k
    }
103
104
26
    void insert_null() {
105
26
        if (null_map == nullptr) {
106
0
            throw doris::Exception(ErrorCode::INTERNAL_ERROR,
107
0
                                   "Cannot insert null value into non-nullable column in "
108
0
                                   "ShortCircuitCoalesceExpr.");
109
0
        }
110
26
        column.insert_default();
111
26
        null_map->push_back(1);
112
26
    }
113
};
114
115
template <PrimitiveType PType>
116
struct MutableColumnNullViewScalar {
117
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
118
    using ArrayType = typename ColumnType::Container;
119
120
    ArrayType& data;
121
    NullMap* null_map;
122
123
5.72k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
5.72k
        ColumnType* data_column = nullptr;
125
5.72k
        NullMap* null_map = nullptr;
126
5.72k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
1.16k
            null_map = &nullable_column->get_null_map_data();
128
1.16k
            auto& nested_column = nullable_column->get_nested_column();
129
1.16k
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
4.55k
        } else {
131
4.55k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
4.55k
        }
133
134
5.72k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
5.72k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
60
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
60
        ColumnType* data_column = nullptr;
125
60
        NullMap* null_map = nullptr;
126
60
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
0
            null_map = &nullable_column->get_null_map_data();
128
0
            auto& nested_column = nullable_column->get_nested_column();
129
0
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
60
        } else {
131
60
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
60
        }
133
134
60
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
60
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
4.09k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
4.09k
        ColumnType* data_column = nullptr;
125
4.09k
        NullMap* null_map = nullptr;
126
4.09k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
17
            null_map = &nullable_column->get_null_map_data();
128
17
            auto& nested_column = nullable_column->get_nested_column();
129
17
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
4.07k
        } else {
131
4.07k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
4.07k
        }
133
134
4.09k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
4.09k
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
1.11k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
1.11k
        ColumnType* data_column = nullptr;
125
1.11k
        NullMap* null_map = nullptr;
126
1.11k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
946
            null_map = &nullable_column->get_null_map_data();
128
946
            auto& nested_column = nullable_column->get_nested_column();
129
946
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
946
        } else {
131
166
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
166
        }
133
134
1.11k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
1.11k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
128
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
128
        ColumnType* data_column = nullptr;
125
128
        NullMap* null_map = nullptr;
126
128
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
29
            null_map = &nullable_column->get_null_map_data();
128
29
            auto& nested_column = nullable_column->get_nested_column();
129
29
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
99
        } else {
131
99
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
99
        }
133
134
128
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
128
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
100
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
100
        ColumnType* data_column = nullptr;
125
100
        NullMap* null_map = nullptr;
126
100
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
83
            null_map = &nullable_column->get_null_map_data();
128
83
            auto& nested_column = nullable_column->get_nested_column();
129
83
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
83
        } else {
131
17
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
17
        }
133
134
100
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
100
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
28
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
28
        ColumnType* data_column = nullptr;
125
28
        NullMap* null_map = nullptr;
126
28
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
7
            null_map = &nullable_column->get_null_map_data();
128
7
            auto& nested_column = nullable_column->get_nested_column();
129
7
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
21
        } else {
131
21
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
21
        }
133
134
28
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
28
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
140
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
140
        ColumnType* data_column = nullptr;
125
140
        NullMap* null_map = nullptr;
126
140
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
57
            null_map = &nullable_column->get_null_map_data();
128
57
            auto& nested_column = nullable_column->get_nested_column();
129
57
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
83
        } else {
131
83
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
83
        }
133
134
140
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
140
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
2
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
2
        ColumnType* data_column = nullptr;
125
2
        NullMap* null_map = nullptr;
126
2
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
2
            null_map = &nullable_column->get_null_map_data();
128
2
            auto& nested_column = nullable_column->get_nested_column();
129
2
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
2
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
2
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
33
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
33
        ColumnType* data_column = nullptr;
125
33
        NullMap* null_map = nullptr;
126
33
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
4
            null_map = &nullable_column->get_null_map_data();
128
4
            auto& nested_column = nullable_column->get_nested_column();
129
4
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
29
        } else {
131
29
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
29
        }
133
134
33
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
33
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
13
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
13
        ColumnType* data_column = nullptr;
125
13
        NullMap* null_map = nullptr;
126
13
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
8
            null_map = &nullable_column->get_null_map_data();
128
8
            auto& nested_column = nullable_column->get_nested_column();
129
8
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
8
        } else {
131
5
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
5
        }
133
134
13
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
13
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
10
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
10
        ColumnType* data_column = nullptr;
125
10
        NullMap* null_map = nullptr;
126
10
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
10
            null_map = &nullable_column->get_null_map_data();
128
10
            auto& nested_column = nullable_column->get_nested_column();
129
10
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
10
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
10
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
2
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
2
        ColumnType* data_column = nullptr;
125
2
        NullMap* null_map = nullptr;
126
2
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
2
            null_map = &nullable_column->get_null_map_data();
128
2
            auto& nested_column = nullable_column->get_nested_column();
129
2
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
2
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
2
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
136
137
14.0k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
14.0k
        auto& result_data = data;
139
14.0k
        const auto& from_data = from.data;
140
141
14.0k
        auto* result_null_map_data = null_map;
142
14.0k
        const auto* from_null_map_data = from.null_map;
143
144
14.0k
        if (from.is_const) {
145
4.30k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
4.30k
                                     from_null_map_data, selector);
147
9.79k
        } else {
148
9.79k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
9.79k
                                      from_null_map_data, selector);
150
9.79k
        }
151
14.0k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_2EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
120
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
120
        auto& result_data = data;
139
120
        const auto& from_data = from.data;
140
141
120
        auto* result_null_map_data = null_map;
142
120
        const auto* from_null_map_data = from.null_map;
143
144
120
        if (from.is_const) {
145
0
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
0
                                     from_null_map_data, selector);
147
120
        } else {
148
120
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
120
                                      from_null_map_data, selector);
150
120
        }
151
120
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_3EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
10.8k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
10.8k
        auto& result_data = data;
139
10.8k
        const auto& from_data = from.data;
140
141
10.8k
        auto* result_null_map_data = null_map;
142
10.8k
        const auto* from_null_map_data = from.null_map;
143
144
10.8k
        if (from.is_const) {
145
3.56k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
3.56k
                                     from_null_map_data, selector);
147
7.30k
        } else {
148
7.30k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
7.30k
                                      from_null_map_data, selector);
150
7.30k
        }
151
10.8k
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_4EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_5EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
2.20k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
2.20k
        auto& result_data = data;
139
2.20k
        const auto& from_data = from.data;
140
141
2.20k
        auto* result_null_map_data = null_map;
142
2.20k
        const auto* from_null_map_data = from.null_map;
143
144
2.20k
        if (from.is_const) {
145
498
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
498
                                     from_null_map_data, selector);
147
1.70k
        } else {
148
1.70k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
1.70k
                                      from_null_map_data, selector);
150
1.70k
        }
151
2.20k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_6EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
255
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
255
        auto& result_data = data;
139
255
        const auto& from_data = from.data;
140
141
255
        auto* result_null_map_data = null_map;
142
255
        const auto* from_null_map_data = from.null_map;
143
144
255
        if (from.is_const) {
145
39
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
39
                                     from_null_map_data, selector);
147
216
        } else {
148
216
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
216
                                      from_null_map_data, selector);
150
216
        }
151
255
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_7EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_8EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_9EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
202
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
202
        auto& result_data = data;
139
202
        const auto& from_data = from.data;
140
141
202
        auto* result_null_map_data = null_map;
142
202
        const auto* from_null_map_data = from.null_map;
143
144
202
        if (from.is_const) {
145
57
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
57
                                     from_null_map_data, selector);
147
145
        } else {
148
145
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
145
                                      from_null_map_data, selector);
150
145
        }
151
202
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_28EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_29EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
47
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
47
        auto& result_data = data;
139
47
        const auto& from_data = from.data;
140
141
47
        auto* result_null_map_data = null_map;
142
47
        const auto* from_null_map_data = from.null_map;
143
144
47
        if (from.is_const) {
145
5
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
5
                                     from_null_map_data, selector);
147
42
        } else {
148
42
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
42
                                      from_null_map_data, selector);
150
42
        }
151
47
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_20EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_30EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
279
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
279
        auto& result_data = data;
139
279
        const auto& from_data = from.data;
140
141
279
        auto* result_null_map_data = null_map;
142
279
        const auto* from_null_map_data = from.null_map;
143
144
279
        if (from.is_const) {
145
121
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
121
                                     from_null_map_data, selector);
147
158
        } else {
148
158
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
158
                                      from_null_map_data, selector);
150
158
        }
151
279
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_35EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
5
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
5
        auto& result_data = data;
139
5
        const auto& from_data = from.data;
140
141
5
        auto* result_null_map_data = null_map;
142
5
        const auto* from_null_map_data = from.null_map;
143
144
5
        if (from.is_const) {
145
0
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
0
                                     from_null_map_data, selector);
147
5
        } else {
148
5
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
5
                                      from_null_map_data, selector);
150
5
        }
151
5
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_11EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_25EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
66
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
66
        auto& result_data = data;
139
66
        const auto& from_data = from.data;
140
141
66
        auto* result_null_map_data = null_map;
142
66
        const auto* from_null_map_data = from.null_map;
143
144
66
        if (from.is_const) {
145
5
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
5
                                     from_null_map_data, selector);
147
61
        } else {
148
61
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
61
                                      from_null_map_data, selector);
150
61
        }
151
66
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_26EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
26
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
26
        auto& result_data = data;
139
26
        const auto& from_data = from.data;
140
141
26
        auto* result_null_map_data = null_map;
142
26
        const auto* from_null_map_data = from.null_map;
143
144
26
        if (from.is_const) {
145
4
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
4
                                     from_null_map_data, selector);
147
22
        } else {
148
22
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
22
                                      from_null_map_data, selector);
150
22
        }
151
26
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_12EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_27EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
16
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
16
        auto& result_data = data;
139
16
        const auto& from_data = from.data;
140
141
16
        auto* result_null_map_data = null_map;
142
16
        const auto* from_null_map_data = from.null_map;
143
144
16
        if (from.is_const) {
145
10
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
10
                                     from_null_map_data, selector);
147
10
        } else {
148
6
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
6
                                      from_null_map_data, selector);
150
6
        }
151
16
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_42EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
4
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
4
        auto& result_data = data;
139
4
        const auto& from_data = from.data;
140
141
4
        auto* result_null_map_data = null_map;
142
4
        const auto* from_null_map_data = from.null_map;
143
144
4
        if (from.is_const) {
145
2
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
2
                                     from_null_map_data, selector);
147
2
        } else {
148
2
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
2
                                      from_null_map_data, selector);
150
2
        }
151
4
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_36EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_37EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
152
153
    template <bool is_const>
154
    static void insert_into_result(ArrayType& result_data, const ArrayType& from_data,
155
                                   NullMap* result_null_map_data, const NullMap* from_null_map_data,
156
14.0k
                                   const Selector& selector) {
157
14.0k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
14.0k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2.10k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2.10k
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
14.0k
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb1EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb0EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
120
                                   const Selector& selector) {
157
120
        insert_with_selector<is_const>(result_data, from_data, selector);
158
120
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
0
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
0
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
120
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb1EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
3.56k
                                   const Selector& selector) {
157
3.56k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
3.56k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
3
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
3
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
3.56k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb0EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
7.30k
                                   const Selector& selector) {
157
7.30k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
7.30k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
14
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
14
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
7.30k
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE18insert_into_resultILb1EEEvRNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE18insert_into_resultILb0EEEvRNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb1EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
498
                                   const Selector& selector) {
157
498
        insert_with_selector<is_const>(result_data, from_data, selector);
158
498
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
447
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
447
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
498
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb0EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
1.70k
                                   const Selector& selector) {
157
1.70k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
1.70k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
1.34k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
1.34k
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
1.70k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb1EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
39
                                   const Selector& selector) {
157
39
        insert_with_selector<is_const>(result_data, from_data, selector);
158
39
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
10
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
10
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
39
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb0EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
216
                                   const Selector& selector) {
157
216
        insert_with_selector<is_const>(result_data, from_data, selector);
158
216
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
48
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
48
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
216
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb1EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb0EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb1EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb0EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb1EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
57
                                   const Selector& selector) {
157
57
        insert_with_selector<is_const>(result_data, from_data, selector);
158
57
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
7
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
7
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
57
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
145
                                   const Selector& selector) {
157
145
        insert_with_selector<is_const>(result_data, from_data, selector);
158
145
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
97
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
97
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
145
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
5
                                   const Selector& selector) {
157
5
        insert_with_selector<is_const>(result_data, from_data, selector);
158
5
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
42
                                   const Selector& selector) {
157
42
        insert_with_selector<is_const>(result_data, from_data, selector);
158
42
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
9
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
9
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
42
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Line
Count
Source
156
121
                                   const Selector& selector) {
157
121
        insert_with_selector<is_const>(result_data, from_data, selector);
158
121
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
25
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
25
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
121
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Line
Count
Source
156
158
                                   const Selector& selector) {
157
158
        insert_with_selector<is_const>(result_data, from_data, selector);
158
158
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
45
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
45
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
158
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEERKSA_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSI_RKNSE_IjLm4096ESH_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEERKSA_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSI_RKNSE_IjLm4096ESH_Lm16ELm15EEE
Line
Count
Source
156
5
                                   const Selector& selector) {
157
5
        insert_with_selector<is_const>(result_data, from_data, selector);
158
5
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
5
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
5
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
5
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
5
                                   const Selector& selector) {
157
5
        insert_with_selector<is_const>(result_data, from_data, selector);
158
5
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
61
                                   const Selector& selector) {
157
61
        insert_with_selector<is_const>(result_data, from_data, selector);
158
61
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
5
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
5
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
61
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
4
                                   const Selector& selector) {
157
4
        insert_with_selector<is_const>(result_data, from_data, selector);
158
4
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
0
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
0
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
4
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
22
                                   const Selector& selector) {
157
22
        insert_with_selector<is_const>(result_data, from_data, selector);
158
22
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
16
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
16
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
22
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE18insert_into_resultILb1EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
10
                                   const Selector& selector) {
157
10
        insert_with_selector<is_const>(result_data, from_data, selector);
158
10
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
10
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
10
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
6
                                   const Selector& selector) {
157
6
        insert_with_selector<is_const>(result_data, from_data, selector);
158
6
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
6
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
6
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
156
2
                                   const Selector& selector) {
157
2
        insert_with_selector<is_const>(result_data, from_data, selector);
158
2
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
156
2
                                   const Selector& selector) {
157
2
        insert_with_selector<is_const>(result_data, from_data, selector);
158
2
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE18insert_into_resultILb1EEEvRNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_SB_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE18insert_into_resultILb0EEEvRNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_SB_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE18insert_into_resultILb1EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE18insert_into_resultILb0EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
165
166
    template <bool is_const>
167
    static void insert_with_selector(auto& result_data, const auto& data,
168
16.1k
                                     const Selector& selector) {
169
155k
        for (size_t i = 0; i < selector.size(); ++i) {
170
139k
            auto index = selector[i];
171
139k
            result_data[index] = data[index_check_const<is_const>(i)];
172
139k
        }
173
16.1k
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
120
                                     const Selector& selector) {
169
953
        for (size_t i = 0; i < selector.size(); ++i) {
170
833
            auto index = selector[i];
171
833
            result_data[index] = data[index_check_const<is_const>(i)];
172
833
        }
173
120
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
3.56k
                                     const Selector& selector) {
169
79.9k
        for (size_t i = 0; i < selector.size(); ++i) {
170
76.3k
            auto index = selector[i];
171
76.3k
            result_data[index] = data[index_check_const<is_const>(i)];
172
76.3k
        }
173
3.56k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
3
                                     const Selector& selector) {
169
6
        for (size_t i = 0; i < selector.size(); ++i) {
170
3
            auto index = selector[i];
171
3
            result_data[index] = data[index_check_const<is_const>(i)];
172
3
        }
173
3
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
7.30k
                                     const Selector& selector) {
169
8.06k
        for (size_t i = 0; i < selector.size(); ++i) {
170
758
            auto index = selector[i];
171
758
            result_data[index] = data[index_check_const<is_const>(i)];
172
758
        }
173
7.30k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
14
                                     const Selector& selector) {
169
16
        for (size_t i = 0; i < selector.size(); ++i) {
170
2
            auto index = selector[i];
171
2
            result_data[index] = data[index_check_const<is_const>(i)];
172
2
        }
173
14
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb0ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
498
                                     const Selector& selector) {
169
2.06k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.56k
            auto index = selector[i];
171
1.56k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.56k
        }
173
498
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
447
                                     const Selector& selector) {
169
1.93k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.48k
            auto index = selector[i];
171
1.48k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.48k
        }
173
447
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1.70k
                                     const Selector& selector) {
169
3.94k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.24k
            auto index = selector[i];
171
2.24k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.24k
        }
173
1.70k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1.34k
                                     const Selector& selector) {
169
3.12k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.78k
            auto index = selector[i];
171
1.78k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.78k
        }
173
1.34k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
39
                                     const Selector& selector) {
169
120
        for (size_t i = 0; i < selector.size(); ++i) {
170
81
            auto index = selector[i];
171
81
            result_data[index] = data[index_check_const<is_const>(i)];
172
81
        }
173
39
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
10
                                     const Selector& selector) {
169
26
        for (size_t i = 0; i < selector.size(); ++i) {
170
16
            auto index = selector[i];
171
16
            result_data[index] = data[index_check_const<is_const>(i)];
172
16
        }
173
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
216
                                     const Selector& selector) {
169
501
        for (size_t i = 0; i < selector.size(); ++i) {
170
285
            auto index = selector[i];
171
285
            result_data[index] = data[index_check_const<is_const>(i)];
172
285
        }
173
216
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
48
                                     const Selector& selector) {
169
111
        for (size_t i = 0; i < selector.size(); ++i) {
170
63
            auto index = selector[i];
171
63
            result_data[index] = data[index_check_const<is_const>(i)];
172
63
        }
173
48
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb1ENS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb0ENS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
57
                                     const Selector& selector) {
169
6.76k
        for (size_t i = 0; i < selector.size(); ++i) {
170
6.70k
            auto index = selector[i];
171
6.70k
            result_data[index] = data[index_check_const<is_const>(i)];
172
6.70k
        }
173
57
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
7
                                     const Selector& selector) {
169
14
        for (size_t i = 0; i < selector.size(); ++i) {
170
7
            auto index = selector[i];
171
7
            result_data[index] = data[index_check_const<is_const>(i)];
172
7
        }
173
7
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
145
                                     const Selector& selector) {
169
1.57k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.42k
            auto index = selector[i];
171
1.42k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.42k
        }
173
145
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
97
                                     const Selector& selector) {
169
1.48k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.38k
            auto index = selector[i];
171
1.38k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.38k
        }
173
97
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
10
        for (size_t i = 0; i < selector.size(); ++i) {
170
5
            auto index = selector[i];
171
5
            result_data[index] = data[index_check_const<is_const>(i)];
172
5
        }
173
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
4
        for (size_t i = 0; i < selector.size(); ++i) {
170
2
            auto index = selector[i];
171
2
            result_data[index] = data[index_check_const<is_const>(i)];
172
2
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
42
                                     const Selector& selector) {
169
117
        for (size_t i = 0; i < selector.size(); ++i) {
170
75
            auto index = selector[i];
171
75
            result_data[index] = data[index_check_const<is_const>(i)];
172
75
        }
173
42
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
9
                                     const Selector& selector) {
169
23
        for (size_t i = 0; i < selector.size(); ++i) {
170
14
            auto index = selector[i];
171
14
            result_data[index] = data[index_check_const<is_const>(i)];
172
14
        }
173
9
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
121
                                     const Selector& selector) {
169
20.2k
        for (size_t i = 0; i < selector.size(); ++i) {
170
20.0k
            auto index = selector[i];
171
20.0k
            result_data[index] = data[index_check_const<is_const>(i)];
172
20.0k
        }
173
121
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
25
                                     const Selector& selector) {
169
57
        for (size_t i = 0; i < selector.size(); ++i) {
170
32
            auto index = selector[i];
171
32
            result_data[index] = data[index_check_const<is_const>(i)];
172
32
        }
173
25
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
158
                                     const Selector& selector) {
169
3.95k
        for (size_t i = 0; i < selector.size(); ++i) {
170
3.80k
            auto index = selector[i];
171
3.80k
            result_data[index] = data[index_check_const<is_const>(i)];
172
3.80k
        }
173
158
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
45
                                     const Selector& selector) {
169
126
        for (size_t i = 0; i < selector.size(); ++i) {
170
81
            auto index = selector[i];
171
81
            result_data[index] = data[index_check_const<is_const>(i)];
172
81
        }
173
45
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEESA_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEESA_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
11
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
11
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
5
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
14
        for (size_t i = 0; i < selector.size(); ++i) {
170
9
            auto index = selector[i];
171
9
            result_data[index] = data[index_check_const<is_const>(i)];
172
9
        }
173
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
5
        for (size_t i = 0; i < selector.size(); ++i) {
170
3
            auto index = selector[i];
171
3
            result_data[index] = data[index_check_const<is_const>(i)];
172
3
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
61
                                     const Selector& selector) {
169
127
        for (size_t i = 0; i < selector.size(); ++i) {
170
66
            auto index = selector[i];
171
66
            result_data[index] = data[index_check_const<is_const>(i)];
172
66
        }
173
61
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
11
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
4
                                     const Selector& selector) {
169
12
        for (size_t i = 0; i < selector.size(); ++i) {
170
8
            auto index = selector[i];
171
8
            result_data[index] = data[index_check_const<is_const>(i)];
172
8
        }
173
4
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
22
                                     const Selector& selector) {
169
54
        for (size_t i = 0; i < selector.size(); ++i) {
170
32
            auto index = selector[i];
171
32
            result_data[index] = data[index_check_const<is_const>(i)];
172
32
        }
173
22
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
16
                                     const Selector& selector) {
169
47
        for (size_t i = 0; i < selector.size(); ++i) {
170
31
            auto index = selector[i];
171
31
            result_data[index] = data[index_check_const<is_const>(i)];
172
31
        }
173
16
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb1ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb0ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb1ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
10
                                     const Selector& selector) {
169
20
        for (size_t i = 0; i < selector.size(); ++i) {
170
10
            auto index = selector[i];
171
10
            result_data[index] = data[index_check_const<is_const>(i)];
172
10
        }
173
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
10
                                     const Selector& selector) {
169
20
        for (size_t i = 0; i < selector.size(); ++i) {
170
10
            auto index = selector[i];
171
10
            result_data[index] = data[index_check_const<is_const>(i)];
172
10
        }
173
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
6
        for (size_t i = 0; i < selector.size(); ++i) {
170
0
            auto index = selector[i];
171
0
            result_data[index] = data[index_check_const<is_const>(i)];
172
0
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
6
        for (size_t i = 0; i < selector.size(); ++i) {
170
0
            auto index = selector[i];
171
0
            result_data[index] = data[index_check_const<is_const>(i)];
172
0
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
106
        for (size_t i = 0; i < selector.size(); ++i) {
170
104
            auto index = selector[i];
171
104
            result_data[index] = data[index_check_const<is_const>(i)];
172
104
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
106
        for (size_t i = 0; i < selector.size(); ++i) {
170
104
            auto index = selector[i];
171
104
            result_data[index] = data[index_check_const<is_const>(i)];
172
104
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb0ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
9.89k
        for (size_t i = 0; i < selector.size(); ++i) {
170
9.89k
            auto index = selector[i];
171
9.89k
            result_data[index] = data[index_check_const<is_const>(i)];
172
9.89k
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
9.89k
        for (size_t i = 0; i < selector.size(); ++i) {
170
9.89k
            auto index = selector[i];
171
9.89k
            result_data[index] = data[index_check_const<is_const>(i)];
172
9.89k
        }
173
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb1ENS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKS8_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb0ENS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKS8_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb1ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb0ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
174
175
6
    void insert_null(const Selector& selector) {
176
6
        if (selector.empty()) {
177
1
            return;
178
1
        }
179
6
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
5
        auto& null_map_data = *null_map;
183
13
        for (size_t i = 0; i < selector.size(); ++i) {
184
8
            null_map_data[selector[i]] = 1;
185
8
        }
186
5
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
6
    void insert_null(const Selector& selector) {
176
6
        if (selector.empty()) {
177
1
            return;
178
1
        }
179
6
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
5
        auto& null_map_data = *null_map;
183
13
        for (size_t i = 0; i < selector.size(); ++i) {
184
8
            null_map_data[selector[i]] = 1;
185
8
        }
186
5
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
187
};
188
189
// Used to store a column and its corresponding selector.
190
// It can be understood as: the positions selected by the selector in the result column correspond to the column inside.
191
// column = filter_column_with_selector(result_column, selector)
192
// What we need to do is fill these positions back into the result column (in a sense, it can be seen as restoring them).
193
// If the column is empty, it means these positions are all null, e.g., the last parameter of coalesce is null, or the else branch of case when is not provided.
194
struct ColumnAndSelector {
195
    ColumnPtr column = nullptr;
196
    Selector selector; // positions in result column
197
198
5.95k
    bool output_nulls() const { return column.get() == nullptr; }
199
200
    std::string debug_string() const {
201
        std::stringstream ss;
202
        ss << "ColumnAndSelector(selector_size=" << selector.size()
203
           << ", output_nulls=" << output_nulls()
204
           << ", column size=" << (column ? std::to_string(column->size()) : "null") << ")";
205
206
        ss << "\n selector data: [";
207
        for (size_t i = 0; i < selector.size(); ++i) {
208
            if (i != 0) {
209
                ss << ", ";
210
            }
211
            ss << selector[i];
212
        }
213
        ss << "]";
214
        return ss.str();
215
    }
216
};
217
218
// Scalar version of fill.
219
// Initializes the result column at the beginning.
220
// Subsequently fills data from each column into the result column using selectors.
221
template <PrimitiveType PType>
222
struct ScalarFillWithSelector {
223
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
224
    using ArrayType = typename ColumnType::Container;
225
226
public:
227
    static ColumnPtr fill(const DataTypePtr& result_type, const ColumnPtr& true_column,
228
                          const Selector& true_selector, const ColumnPtr& false_column,
229
4.07k
                          const Selector& false_selector, size_t count) {
230
4.07k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
4.07k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
4.07k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
4.07k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
4.07k
        auto result_column = result_type->create_column();
236
237
4.07k
        MutableColumnNullViewScalar<PType> result_column_view =
238
4.07k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
4.07k
        init_result_column(result_column_view, count);
240
241
4.07k
        ColumnNullConstViewScalar<PType> true_column_view =
242
4.07k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
4.07k
        ColumnNullConstViewScalar<PType> false_column_view =
244
4.07k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
4.07k
        result_column_view.insert_from(true_column_view, true_selector);
247
4.07k
        result_column_view.insert_from(false_column_view, false_selector);
248
4.07k
        DCHECK_EQ(result_column->size(), count);
249
4.07k
        return result_column;
250
4.07k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
60
                          const Selector& false_selector, size_t count) {
230
60
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
60
        DCHECK_EQ(true_column->size(), true_selector.size());
232
60
        DCHECK_EQ(false_column->size(), false_selector.size());
233
60
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
60
        auto result_column = result_type->create_column();
236
237
60
        MutableColumnNullViewScalar<PType> result_column_view =
238
60
                MutableColumnNullViewScalar<PType>::create(result_column);
239
60
        init_result_column(result_column_view, count);
240
241
60
        ColumnNullConstViewScalar<PType> true_column_view =
242
60
                ColumnNullConstViewScalar<PType>::create(true_column);
243
60
        ColumnNullConstViewScalar<PType> false_column_view =
244
60
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
60
        result_column_view.insert_from(true_column_view, true_selector);
247
60
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
60
        return result_column;
250
60
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
2.56k
                          const Selector& false_selector, size_t count) {
230
2.56k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
2.56k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
2.56k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
2.56k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
2.56k
        auto result_column = result_type->create_column();
236
237
2.56k
        MutableColumnNullViewScalar<PType> result_column_view =
238
2.56k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
2.56k
        init_result_column(result_column_view, count);
240
241
2.56k
        ColumnNullConstViewScalar<PType> true_column_view =
242
2.56k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
2.56k
        ColumnNullConstViewScalar<PType> false_column_view =
244
2.56k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
2.56k
        result_column_view.insert_from(true_column_view, true_selector);
247
2.56k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
2.56k
        return result_column;
250
2.56k
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
1.04k
                          const Selector& false_selector, size_t count) {
230
1.04k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
1.04k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
1.04k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
1.04k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
1.04k
        auto result_column = result_type->create_column();
236
237
1.04k
        MutableColumnNullViewScalar<PType> result_column_view =
238
1.04k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
1.04k
        init_result_column(result_column_view, count);
240
241
1.04k
        ColumnNullConstViewScalar<PType> true_column_view =
242
1.04k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
1.04k
        ColumnNullConstViewScalar<PType> false_column_view =
244
1.04k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
1.04k
        result_column_view.insert_from(true_column_view, true_selector);
247
1.04k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
1.04k
        return result_column;
250
1.04k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
124
                          const Selector& false_selector, size_t count) {
230
124
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
124
        DCHECK_EQ(true_column->size(), true_selector.size());
232
124
        DCHECK_EQ(false_column->size(), false_selector.size());
233
124
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
124
        auto result_column = result_type->create_column();
236
237
124
        MutableColumnNullViewScalar<PType> result_column_view =
238
124
                MutableColumnNullViewScalar<PType>::create(result_column);
239
124
        init_result_column(result_column_view, count);
240
241
124
        ColumnNullConstViewScalar<PType> true_column_view =
242
124
                ColumnNullConstViewScalar<PType>::create(true_column);
243
124
        ColumnNullConstViewScalar<PType> false_column_view =
244
124
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
124
        result_column_view.insert_from(true_column_view, true_selector);
247
124
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
124
        return result_column;
250
124
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
80
                          const Selector& false_selector, size_t count) {
230
80
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
80
        DCHECK_EQ(true_column->size(), true_selector.size());
232
80
        DCHECK_EQ(false_column->size(), false_selector.size());
233
80
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
80
        auto result_column = result_type->create_column();
236
237
80
        MutableColumnNullViewScalar<PType> result_column_view =
238
80
                MutableColumnNullViewScalar<PType>::create(result_column);
239
80
        init_result_column(result_column_view, count);
240
241
80
        ColumnNullConstViewScalar<PType> true_column_view =
242
80
                ColumnNullConstViewScalar<PType>::create(true_column);
243
80
        ColumnNullConstViewScalar<PType> false_column_view =
244
80
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
80
        result_column_view.insert_from(true_column_view, true_selector);
247
80
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
80
        return result_column;
250
80
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
19
                          const Selector& false_selector, size_t count) {
230
19
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
19
        DCHECK_EQ(true_column->size(), true_selector.size());
232
19
        DCHECK_EQ(false_column->size(), false_selector.size());
233
19
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
19
        auto result_column = result_type->create_column();
236
237
19
        MutableColumnNullViewScalar<PType> result_column_view =
238
19
                MutableColumnNullViewScalar<PType>::create(result_column);
239
19
        init_result_column(result_column_view, count);
240
241
19
        ColumnNullConstViewScalar<PType> true_column_view =
242
19
                ColumnNullConstViewScalar<PType>::create(true_column);
243
19
        ColumnNullConstViewScalar<PType> false_column_view =
244
19
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
19
        result_column_view.insert_from(true_column_view, true_selector);
247
19
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
19
        return result_column;
250
19
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
139
                          const Selector& false_selector, size_t count) {
230
139
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
139
        DCHECK_EQ(true_column->size(), true_selector.size());
232
139
        DCHECK_EQ(false_column->size(), false_selector.size());
233
139
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
139
        auto result_column = result_type->create_column();
236
237
139
        MutableColumnNullViewScalar<PType> result_column_view =
238
139
                MutableColumnNullViewScalar<PType>::create(result_column);
239
139
        init_result_column(result_column_view, count);
240
241
139
        ColumnNullConstViewScalar<PType> true_column_view =
242
139
                ColumnNullConstViewScalar<PType>::create(true_column);
243
139
        ColumnNullConstViewScalar<PType> false_column_view =
244
139
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
139
        result_column_view.insert_from(true_column_view, true_selector);
247
139
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
139
        return result_column;
250
139
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
31
                          const Selector& false_selector, size_t count) {
230
31
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
31
        DCHECK_EQ(true_column->size(), true_selector.size());
232
31
        DCHECK_EQ(false_column->size(), false_selector.size());
233
31
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
31
        auto result_column = result_type->create_column();
236
237
31
        MutableColumnNullViewScalar<PType> result_column_view =
238
31
                MutableColumnNullViewScalar<PType>::create(result_column);
239
31
        init_result_column(result_column_view, count);
240
241
31
        ColumnNullConstViewScalar<PType> true_column_view =
242
31
                ColumnNullConstViewScalar<PType>::create(true_column);
243
31
        ColumnNullConstViewScalar<PType> false_column_view =
244
31
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
31
        result_column_view.insert_from(true_column_view, true_selector);
247
31
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
31
        return result_column;
250
31
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
9
                          const Selector& false_selector, size_t count) {
230
9
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
9
        DCHECK_EQ(true_column->size(), true_selector.size());
232
9
        DCHECK_EQ(false_column->size(), false_selector.size());
233
9
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
9
        auto result_column = result_type->create_column();
236
237
9
        MutableColumnNullViewScalar<PType> result_column_view =
238
9
                MutableColumnNullViewScalar<PType>::create(result_column);
239
9
        init_result_column(result_column_view, count);
240
241
9
        ColumnNullConstViewScalar<PType> true_column_view =
242
9
                ColumnNullConstViewScalar<PType>::create(true_column);
243
9
        ColumnNullConstViewScalar<PType> false_column_view =
244
9
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
9
        result_column_view.insert_from(true_column_view, true_selector);
247
9
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
9
        return result_column;
250
9
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
6
                          const Selector& false_selector, size_t count) {
230
6
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
6
        DCHECK_EQ(true_column->size(), true_selector.size());
232
6
        DCHECK_EQ(false_column->size(), false_selector.size());
233
6
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
6
        auto result_column = result_type->create_column();
236
237
6
        MutableColumnNullViewScalar<PType> result_column_view =
238
6
                MutableColumnNullViewScalar<PType>::create(result_column);
239
6
        init_result_column(result_column_view, count);
240
241
6
        ColumnNullConstViewScalar<PType> true_column_view =
242
6
                ColumnNullConstViewScalar<PType>::create(true_column);
243
6
        ColumnNullConstViewScalar<PType> false_column_view =
244
6
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
6
        result_column_view.insert_from(true_column_view, true_selector);
247
6
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
6
        return result_column;
250
6
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
2
                          const Selector& false_selector, size_t count) {
230
2
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
2
        DCHECK_EQ(true_column->size(), true_selector.size());
232
2
        DCHECK_EQ(false_column->size(), false_selector.size());
233
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
2
        auto result_column = result_type->create_column();
236
237
2
        MutableColumnNullViewScalar<PType> result_column_view =
238
2
                MutableColumnNullViewScalar<PType>::create(result_column);
239
2
        init_result_column(result_column_view, count);
240
241
2
        ColumnNullConstViewScalar<PType> true_column_view =
242
2
                ColumnNullConstViewScalar<PType>::create(true_column);
243
2
        ColumnNullConstViewScalar<PType> false_column_view =
244
2
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
2
        result_column_view.insert_from(true_column_view, true_selector);
247
2
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
2
        return result_column;
250
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
251
252
    static ColumnPtr fill(const DataTypePtr& result_type,
253
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
254
1.64k
                          size_t count) {
255
1.64k
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
1.64k
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
1.64k
                                             return sum + cs.selector.size();
258
1.64k
                                         }));
259
1.64k
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
1.64k
        auto result_column = result_type->create_column();
261
262
1.64k
        MutableColumnNullViewScalar<PType> result_column_view =
263
1.64k
                MutableColumnNullViewScalar<PType>::create(result_column);
264
1.64k
        init_result_column(result_column_view, count);
265
266
5.95k
        for (const auto& columns_and_selector : columns_and_selectors) {
267
5.95k
            if (columns_and_selector.output_nulls()) {
268
4
                result_column_view.insert_null(columns_and_selector.selector);
269
5.94k
            } else {
270
5.94k
                ColumnNullConstViewScalar<PType> from_column_view =
271
5.94k
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
5.94k
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
5.94k
            }
274
5.95k
        }
275
1.64k
        DCHECK_EQ(result_column->size(), count);
276
1.64k
        return result_column;
277
1.64k
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
1.53k
                          size_t count) {
255
1.53k
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
1.53k
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
1.53k
                                             return sum + cs.selector.size();
258
1.53k
                                         }));
259
1.53k
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
1.53k
        auto result_column = result_type->create_column();
261
262
1.53k
        MutableColumnNullViewScalar<PType> result_column_view =
263
1.53k
                MutableColumnNullViewScalar<PType>::create(result_column);
264
1.53k
        init_result_column(result_column_view, count);
265
266
5.75k
        for (const auto& columns_and_selector : columns_and_selectors) {
267
5.75k
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
5.75k
            } else {
270
5.75k
                ColumnNullConstViewScalar<PType> from_column_view =
271
5.75k
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
5.75k
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
5.75k
            }
274
5.75k
        }
275
        DCHECK_EQ(result_column->size(), count);
276
1.53k
        return result_column;
277
1.53k
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
68
                          size_t count) {
255
68
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
68
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
68
                                             return sum + cs.selector.size();
258
68
                                         }));
259
68
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
68
        auto result_column = result_type->create_column();
261
262
68
        MutableColumnNullViewScalar<PType> result_column_view =
263
68
                MutableColumnNullViewScalar<PType>::create(result_column);
264
68
        init_result_column(result_column_view, count);
265
266
123
        for (const auto& columns_and_selector : columns_and_selectors) {
267
123
            if (columns_and_selector.output_nulls()) {
268
4
                result_column_view.insert_null(columns_and_selector.selector);
269
119
            } else {
270
119
                ColumnNullConstViewScalar<PType> from_column_view =
271
119
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
119
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
119
            }
274
123
        }
275
        DCHECK_EQ(result_column->size(), count);
276
68
        return result_column;
277
68
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
4
                          size_t count) {
255
4
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
4
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
4
                                             return sum + cs.selector.size();
258
4
                                         }));
259
4
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
4
        auto result_column = result_type->create_column();
261
262
4
        MutableColumnNullViewScalar<PType> result_column_view =
263
4
                MutableColumnNullViewScalar<PType>::create(result_column);
264
4
        init_result_column(result_column_view, count);
265
266
7
        for (const auto& columns_and_selector : columns_and_selectors) {
267
7
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
7
            } else {
270
7
                ColumnNullConstViewScalar<PType> from_column_view =
271
7
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
7
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
7
            }
274
7
        }
275
        DCHECK_EQ(result_column->size(), count);
276
4
        return result_column;
277
4
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
20
                          size_t count) {
255
20
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
20
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
20
                                             return sum + cs.selector.size();
258
20
                                         }));
259
20
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
20
        auto result_column = result_type->create_column();
261
262
20
        MutableColumnNullViewScalar<PType> result_column_view =
263
20
                MutableColumnNullViewScalar<PType>::create(result_column);
264
20
        init_result_column(result_column_view, count);
265
266
42
        for (const auto& columns_and_selector : columns_and_selectors) {
267
42
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
42
            } else {
270
42
                ColumnNullConstViewScalar<PType> from_column_view =
271
42
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
42
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
42
            }
274
42
        }
275
        DCHECK_EQ(result_column->size(), count);
276
20
        return result_column;
277
20
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
9
                          size_t count) {
255
9
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
9
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
9
                                             return sum + cs.selector.size();
258
9
                                         }));
259
9
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
9
        auto result_column = result_type->create_column();
261
262
9
        MutableColumnNullViewScalar<PType> result_column_view =
263
9
                MutableColumnNullViewScalar<PType>::create(result_column);
264
9
        init_result_column(result_column_view, count);
265
266
9
        for (const auto& columns_and_selector : columns_and_selectors) {
267
9
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
9
            } else {
270
9
                ColumnNullConstViewScalar<PType> from_column_view =
271
9
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
9
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
9
            }
274
9
        }
275
        DCHECK_EQ(result_column->size(), count);
276
9
        return result_column;
277
9
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
1
                          size_t count) {
255
1
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
1
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
1
                                             return sum + cs.selector.size();
258
1
                                         }));
259
1
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
1
        auto result_column = result_type->create_column();
261
262
1
        MutableColumnNullViewScalar<PType> result_column_view =
263
1
                MutableColumnNullViewScalar<PType>::create(result_column);
264
1
        init_result_column(result_column_view, count);
265
266
1
        for (const auto& columns_and_selector : columns_and_selectors) {
267
1
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
1
            } else {
270
1
                ColumnNullConstViewScalar<PType> from_column_view =
271
1
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
1
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
1
            }
274
1
        }
275
        DCHECK_EQ(result_column->size(), count);
276
1
        return result_column;
277
1
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
2
                          size_t count) {
255
2
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
2
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
2
                                             return sum + cs.selector.size();
258
2
                                         }));
259
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
2
        auto result_column = result_type->create_column();
261
262
2
        MutableColumnNullViewScalar<PType> result_column_view =
263
2
                MutableColumnNullViewScalar<PType>::create(result_column);
264
2
        init_result_column(result_column_view, count);
265
266
5
        for (const auto& columns_and_selector : columns_and_selectors) {
267
5
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
5
            } else {
270
5
                ColumnNullConstViewScalar<PType> from_column_view =
271
5
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
5
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
5
            }
274
5
        }
275
        DCHECK_EQ(result_column->size(), count);
276
2
        return result_column;
277
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
2
                          size_t count) {
255
2
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
2
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
2
                                             return sum + cs.selector.size();
258
2
                                         }));
259
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
2
        auto result_column = result_type->create_column();
261
262
2
        MutableColumnNullViewScalar<PType> result_column_view =
263
2
                MutableColumnNullViewScalar<PType>::create(result_column);
264
2
        init_result_column(result_column_view, count);
265
266
4
        for (const auto& columns_and_selector : columns_and_selectors) {
267
4
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
4
            } else {
270
4
                ColumnNullConstViewScalar<PType> from_column_view =
271
4
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
4
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
4
            }
274
4
        }
275
        DCHECK_EQ(result_column->size(), count);
276
2
        return result_column;
277
2
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
4
                          size_t count) {
255
4
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
4
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
4
                                             return sum + cs.selector.size();
258
4
                                         }));
259
4
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
4
        auto result_column = result_type->create_column();
261
262
4
        MutableColumnNullViewScalar<PType> result_column_view =
263
4
                MutableColumnNullViewScalar<PType>::create(result_column);
264
4
        init_result_column(result_column_view, count);
265
266
8
        for (const auto& columns_and_selector : columns_and_selectors) {
267
8
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
8
            } else {
270
8
                ColumnNullConstViewScalar<PType> from_column_view =
271
8
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
8
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
8
            }
274
8
        }
275
        DCHECK_EQ(result_column->size(), count);
276
4
        return result_column;
277
4
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
4
                          size_t count) {
255
4
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
4
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
4
                                             return sum + cs.selector.size();
258
4
                                         }));
259
4
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
4
        auto result_column = result_type->create_column();
261
262
4
        MutableColumnNullViewScalar<PType> result_column_view =
263
4
                MutableColumnNullViewScalar<PType>::create(result_column);
264
4
        init_result_column(result_column_view, count);
265
266
4
        for (const auto& columns_and_selector : columns_and_selectors) {
267
4
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
4
            } else {
270
4
                ColumnNullConstViewScalar<PType> from_column_view =
271
4
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
4
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
4
            }
274
4
        }
275
        DCHECK_EQ(result_column->size(), count);
276
4
        return result_column;
277
4
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
278
279
private:
280
    // if result_column is nullable,nullmap will all init to false
281
    static void init_result_column(MutableColumnNullViewScalar<PType>& result_column_view,
282
5.71k
                                   size_t count) {
283
5.71k
        result_column_view.data.resize(count);
284
5.71k
        if (result_column_view.null_map != nullptr) {
285
1.16k
            result_column_view.null_map->resize_fill(count, 0);
286
1.16k
        }
287
5.71k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_2EEEm
Line
Count
Source
282
60
                                   size_t count) {
283
60
        result_column_view.data.resize(count);
284
60
        if (result_column_view.null_map != nullptr) {
285
0
            result_column_view.null_map->resize_fill(count, 0);
286
0
        }
287
60
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_3EEEm
Line
Count
Source
282
4.09k
                                   size_t count) {
283
4.09k
        result_column_view.data.resize(count);
284
4.09k
        if (result_column_view.null_map != nullptr) {
285
17
            result_column_view.null_map->resize_fill(count, 0);
286
17
        }
287
4.09k
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_4EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_5EEEm
Line
Count
Source
282
1.10k
                                   size_t count) {
283
1.10k
        result_column_view.data.resize(count);
284
1.10k
        if (result_column_view.null_map != nullptr) {
285
945
            result_column_view.null_map->resize_fill(count, 0);
286
945
        }
287
1.10k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_6EEEm
Line
Count
Source
282
128
                                   size_t count) {
283
128
        result_column_view.data.resize(count);
284
128
        if (result_column_view.null_map != nullptr) {
285
29
            result_column_view.null_map->resize_fill(count, 0);
286
29
        }
287
128
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_7EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_8EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_9EEEm
Line
Count
Source
282
100
                                   size_t count) {
283
100
        result_column_view.data.resize(count);
284
100
        if (result_column_view.null_map != nullptr) {
285
83
            result_column_view.null_map->resize_fill(count, 0);
286
83
        }
287
100
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_28EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_29EEEm
Line
Count
Source
282
28
                                   size_t count) {
283
28
        result_column_view.data.resize(count);
284
28
        if (result_column_view.null_map != nullptr) {
285
7
            result_column_view.null_map->resize_fill(count, 0);
286
7
        }
287
28
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_20EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_30EEEm
Line
Count
Source
282
140
                                   size_t count) {
283
140
        result_column_view.data.resize(count);
284
140
        if (result_column_view.null_map != nullptr) {
285
57
            result_column_view.null_map->resize_fill(count, 0);
286
57
        }
287
140
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_35EEEm
Line
Count
Source
282
2
                                   size_t count) {
283
2
        result_column_view.data.resize(count);
284
2
        if (result_column_view.null_map != nullptr) {
285
2
            result_column_view.null_map->resize_fill(count, 0);
286
2
        }
287
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_11EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_25EEEm
Line
Count
Source
282
33
                                   size_t count) {
283
33
        result_column_view.data.resize(count);
284
33
        if (result_column_view.null_map != nullptr) {
285
4
            result_column_view.null_map->resize_fill(count, 0);
286
4
        }
287
33
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_26EEEm
Line
Count
Source
282
13
                                   size_t count) {
283
13
        result_column_view.data.resize(count);
284
13
        if (result_column_view.null_map != nullptr) {
285
8
            result_column_view.null_map->resize_fill(count, 0);
286
8
        }
287
13
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_12EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_27EEEm
Line
Count
Source
282
10
                                   size_t count) {
283
10
        result_column_view.data.resize(count);
284
10
        if (result_column_view.null_map != nullptr) {
285
10
            result_column_view.null_map->resize_fill(count, 0);
286
10
        }
287
10
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_42EEEm
Line
Count
Source
282
2
                                   size_t count) {
283
2
        result_column_view.data.resize(count);
284
2
        if (result_column_view.null_map != nullptr) {
285
2
            result_column_view.null_map->resize_fill(count, 0);
286
2
        }
287
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_36EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_37EEEm
288
};
289
290
// Non-scalar version of fill.
291
// For types that do not support random access, such as string, array, map, etc.
292
struct NonScalarFillWithSelector {
293
    static ColumnPtr fill(const DataTypePtr& result_type, const ColumnPtr& true_column,
294
                          const Selector& true_selector, const ColumnPtr& false_column,
295
820
                          const Selector& false_selector, size_t count) {
296
820
        DCHECK_EQ(false_selector.size() + true_selector.size(), count)
297
0
                << "Mismatched selector sizes."
298
0
                << " false selector size: " << false_selector.size()
299
0
                << ", true selector size: " << true_selector.size() << ", count: " << count;
300
820
        DCHECK_EQ(true_column->size(), true_selector.size());
301
820
        DCHECK_EQ(false_column->size(), false_selector.size());
302
303
820
        auto result_column = result_type->create_column();
304
305
820
        MutableColumnNullView result_column_view = MutableColumnNullView::create(result_column);
306
820
        ColumnNullConstView true_column_view = ColumnNullConstView::create(true_column);
307
820
        ColumnNullConstView false_column_view = ColumnNullConstView::create(false_column);
308
309
820
        size_t true_index = 0;
310
820
        size_t false_index = 0;
311
10.7k
        for (size_t i = 0; i < count; ++i) {
312
9.97k
            if (true_index < true_selector.size() && i == true_selector[true_index]) {
313
4.54k
                result_column_view.insert_from(true_column_view, true_index++);
314
5.42k
            } else {
315
5.42k
                result_column_view.insert_from(false_column_view, false_index++);
316
5.42k
            }
317
9.97k
        }
318
319
820
        DCHECK_EQ(result_column->size(), count);
320
820
        return result_column;
321
820
    }
322
323
    static ColumnPtr fill(const DataTypePtr& result_type,
324
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
325
358
                          size_t count) {
326
358
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
327
358
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
328
358
                                             return sum + cs.selector.size();
329
358
                                         }));
330
358
        struct FillColumnWithPos {
331
358
            std::optional<ColumnNullConstView> source_column;
332
358
            size_t pos_in_source; // position in the column
333
334
4.36k
            void insert_to_column(MutableColumnNullView& result_column) const {
335
4.36k
                if (!source_column) {
336
24
                    result_column.insert_null();
337
4.34k
                } else {
338
4.34k
                    result_column.insert_from(*source_column, pos_in_source);
339
4.34k
                }
340
4.36k
            }
341
358
        };
342
343
358
        auto mutable_result_column = result_type->create_column();
344
358
        mutable_result_column->reserve(count);
345
346
358
        MutableColumnNullView mutable_result_column_view =
347
358
                MutableColumnNullView::create(mutable_result_column);
348
349
358
        std::vector<FillColumnWithPos> fill_positions(count);
350
351
1.46k
        for (const ColumnAndSelector& column_with_selector : columns_and_selectors) {
352
1.46k
            if (column_with_selector.selector.empty()) {
353
155
                continue;
354
155
            }
355
5.68k
            for (size_t i = 0; i < column_with_selector.selector.size(); ++i) {
356
4.36k
                size_t result_index = column_with_selector.selector[i];
357
4.36k
                DCHECK(fill_positions[result_index].source_column.has_value() == false)
358
0
                        << "Position " << result_index << " has been filled already.";
359
4.36k
                if (column_with_selector.column) {
360
4.34k
                    ColumnNullConstView column_view =
361
4.34k
                            ColumnNullConstView::create(column_with_selector.column);
362
4.34k
                    fill_positions[result_index].source_column.emplace(column_view);
363
4.34k
                    fill_positions[result_index].pos_in_source = i;
364
4.34k
                } else {
365
24
                    fill_positions[result_index].source_column = std::nullopt;
366
24
                }
367
4.36k
            }
368
1.31k
        }
369
370
4.36k
        for (const FillColumnWithPos& fill_pos : fill_positions) {
371
4.36k
            fill_pos.insert_to_column(mutable_result_column_view);
372
4.36k
        }
373
374
358
        DCHECK_EQ(mutable_result_column->size(), count);
375
358
        return mutable_result_column;
376
358
    }
377
};
378
379
struct ConditionColumnViewHelper {
380
    ConditionColumnViewHelper(const Selector* selector, size_t count)
381
11.3k
            : _selector(selector), _count(count) {}
382
383
    // Iterate over the condition column and generate true_selector and false_selector
384
    // based on null_map and data.
385
386
    template <bool is_const, typename Func>
387
11.3k
    void for_each_with_selector(Func& f) const {
388
11.3k
        if (_selector != nullptr) {
389
5.40k
            const auto& selector_data = *_selector;
390
23.6k
            for (size_t i = 0; i < _count; ++i) {
391
18.2k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
18.2k
            }
393
5.98k
        } else {
394
143k
            for (size_t i = 0; i < _count; ++i) {
395
137k
                f(index_check_const<is_const>(i), i, i);
396
137k
            }
397
5.98k
        }
398
11.3k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
14
    void for_each_with_selector(Func& f) const {
388
14
        if (_selector != nullptr) {
389
2
            const auto& selector_data = *_selector;
390
6
            for (size_t i = 0; i < _count; ++i) {
391
4
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
4
            }
393
12
        } else {
394
27
            for (size_t i = 0; i < _count; ++i) {
395
15
                f(index_check_const<is_const>(i), i, i);
396
15
            }
397
12
        }
398
14
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
2.24k
    void for_each_with_selector(Func& f) const {
388
2.24k
        if (_selector != nullptr) {
389
766
            const auto& selector_data = *_selector;
390
1.58k
            for (size_t i = 0; i < _count; ++i) {
391
823
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
823
            }
393
1.48k
        } else {
394
21.8k
            for (size_t i = 0; i < _count; ++i) {
395
20.3k
                f(index_check_const<is_const>(i), i, i);
396
20.3k
            }
397
1.48k
        }
398
2.24k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
276
    void for_each_with_selector(Func& f) const {
388
276
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
276
        } else {
394
991
            for (size_t i = 0; i < _count; ++i) {
395
715
                f(index_check_const<is_const>(i), i, i);
396
715
            }
397
276
        }
398
276
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
1.90k
    void for_each_with_selector(Func& f) const {
388
1.90k
        if (_selector != nullptr) {
389
50
            const auto& selector_data = *_selector;
390
150
            for (size_t i = 0; i < _count; ++i) {
391
100
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
100
            }
393
1.85k
        } else {
394
110k
            for (size_t i = 0; i < _count; ++i) {
395
108k
                f(index_check_const<is_const>(i), i, i);
396
108k
            }
397
1.85k
        }
398
1.90k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
4
    void for_each_with_selector(Func& f) const {
388
4
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
4
        } else {
394
14
            for (size_t i = 0; i < _count; ++i) {
395
10
                f(index_check_const<is_const>(i), i, i);
396
10
            }
397
4
        }
398
4
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
169
    void for_each_with_selector(Func& f) const {
388
169
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
169
        } else {
394
3.38k
            for (size_t i = 0; i < _count; ++i) {
395
3.21k
                f(index_check_const<is_const>(i), i, i);
396
3.21k
            }
397
169
        }
398
169
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
116
    void for_each_with_selector(Func& f) const {
388
116
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
116
        } else {
394
1.08k
            for (size_t i = 0; i < _count; ++i) {
395
967
                f(index_check_const<is_const>(i), i, i);
396
967
            }
397
116
        }
398
116
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
1.56k
    void for_each_with_selector(Func& f) const {
388
1.56k
        if (_selector != nullptr) {
389
18
            const auto& selector_data = *_selector;
390
58
            for (size_t i = 0; i < _count; ++i) {
391
40
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
40
            }
393
1.54k
        } else {
394
3.16k
            for (size_t i = 0; i < _count; ++i) {
395
1.62k
                f(index_check_const<is_const>(i), i, i);
396
1.62k
            }
397
1.54k
        }
398
1.56k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
16
    void for_each_with_selector(Func& f) const {
388
16
        if (_selector != nullptr) {
389
16
            const auto& selector_data = *_selector;
390
48
            for (size_t i = 0; i < _count; ++i) {
391
32
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
32
            }
393
16
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
16
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
2.94k
    void for_each_with_selector(Func& f) const {
388
2.94k
        if (_selector != nullptr) {
389
2.94k
            const auto& selector_data = *_selector;
390
18.5k
            for (size_t i = 0; i < _count; ++i) {
391
15.5k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
15.5k
            }
393
2.94k
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
2.94k
    }
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
1.44k
    void for_each_with_selector(Func& f) const {
388
1.44k
        if (_selector != nullptr) {
389
1.44k
            const auto& selector_data = *_selector;
390
2.89k
            for (size_t i = 0; i < _count; ++i) {
391
1.44k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
1.44k
            }
393
1.44k
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
1.44k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
10
    void for_each_with_selector(Func& f) const {
388
10
        if (_selector != nullptr) {
389
2
            const auto& selector_data = *_selector;
390
4
            for (size_t i = 0; i < _count; ++i) {
391
2
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
2
            }
393
8
        } else {
394
16
            for (size_t i = 0; i < _count; ++i) {
395
8
                f(index_check_const<is_const>(i), i, i);
396
8
            }
397
8
        }
398
10
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
437
    void for_each_with_selector(Func& f) const {
388
437
        if (_selector != nullptr) {
389
41
            const auto& selector_data = *_selector;
390
113
            for (size_t i = 0; i < _count; ++i) {
391
72
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
72
            }
393
396
        } else {
394
2.03k
            for (size_t i = 0; i < _count; ++i) {
395
1.63k
                f(index_check_const<is_const>(i), i, i);
396
1.63k
            }
397
396
        }
398
437
    }
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
6
    void for_each_with_selector(Func& f) const {
388
6
        if (_selector != nullptr) {
389
2
            const auto& selector_data = *_selector;
390
4
            for (size_t i = 0; i < _count; ++i) {
391
2
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
2
            }
393
4
        } else {
394
8
            for (size_t i = 0; i < _count; ++i) {
395
4
                f(index_check_const<is_const>(i), i, i);
396
4
            }
397
4
        }
398
6
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
133
    void for_each_with_selector(Func& f) const {
388
133
        if (_selector != nullptr) {
389
16
            const auto& selector_data = *_selector;
390
38
            for (size_t i = 0; i < _count; ++i) {
391
22
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
22
            }
393
117
        } else {
394
453
            for (size_t i = 0; i < _count; ++i) {
395
336
                f(index_check_const<is_const>(i), i, i);
396
336
            }
397
117
        }
398
133
    }
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE_EEvSO_
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
43
    void for_each_with_selector(Func& f) const {
388
43
        if (_selector != nullptr) {
389
43
            const auto& selector_data = *_selector;
390
103
            for (size_t i = 0; i < _count; ++i) {
391
60
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
60
            }
393
43
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
43
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE0_EEvSO_
Line
Count
Source
387
47
    void for_each_with_selector(Func& f) const {
388
47
        if (_selector != nullptr) {
389
47
            const auto& selector_data = *_selector;
390
103
            for (size_t i = 0; i < _count; ++i) {
391
56
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
56
            }
393
47
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
47
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE0_EEvSO_
Line
Count
Source
387
6
    void for_each_with_selector(Func& f) const {
388
6
        if (_selector != nullptr) {
389
6
            const auto& selector_data = *_selector;
390
12
            for (size_t i = 0; i < _count; ++i) {
391
6
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
6
            }
393
6
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
6
    }
399
400
private:
401
    const Selector* _selector;
402
    const size_t _count;
403
};
404
405
// Utility class for columns that return boolean values.
406
// We care about whether the value is null, as well as true/false values.
407
struct ConditionColumnView : ColumnNullConstViewScalar<TYPE_BOOLEAN>, ConditionColumnViewHelper {
408
    ConditionColumnView(ColumnNullConstViewScalar<TYPE_BOOLEAN> base, const Selector* selector,
409
                        size_t count)
410
10.7k
            : ColumnNullConstViewScalar<TYPE_BOOLEAN>(base),
411
10.7k
              ConditionColumnViewHelper(selector, count) {}
412
413
    static ConditionColumnView create(const ColumnPtr& column_ptr, const Selector* selector,
414
10.7k
                                      size_t count) {
415
10.7k
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
416
10.7k
        return {ColumnNullConstViewScalar<TYPE_BOOLEAN>::create(column_ptr), selector, count};
417
10.7k
    }
418
419
    template <typename NullFunc, typename TrueFunc, typename FalseFunc>
420
10.7k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
10.7k
        if (this->null_map != nullptr) {
422
5.39k
            const auto& null_map_data = *(this->null_map);
423
40.0k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
40.0k
                if (null_map_data[i]) {
425
177
                    null_func(self_index, executor_index);
426
39.9k
                } else {
427
39.9k
                    if (this->data[i]) {
428
5.41k
                        true_func(self_index, executor_index);
429
34.4k
                    } else {
430
34.4k
                        false_func(self_index, executor_index);
431
34.4k
                    }
432
39.9k
                }
433
40.0k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Line
Count
Source
423
21.2k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
21.2k
                if (null_map_data[i]) {
425
99
                    null_func(self_index, executor_index);
426
21.1k
                } else {
427
21.1k
                    if (this->data[i]) {
428
2.00k
                        true_func(self_index, executor_index);
429
19.1k
                    } else {
430
19.1k
                        false_func(self_index, executor_index);
431
19.1k
                    }
432
21.1k
                }
433
21.2k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Line
Count
Source
423
3.22k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
3.22k
                if (null_map_data[i]) {
425
29
                    null_func(self_index, executor_index);
426
3.19k
                } else {
427
3.19k
                    if (this->data[i]) {
428
350
                        true_func(self_index, executor_index);
429
2.84k
                    } else {
430
2.84k
                        false_func(self_index, executor_index);
431
2.84k
                    }
432
3.19k
                }
433
3.22k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Line
Count
Source
423
15.6k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
15.6k
                if (null_map_data[i]) {
425
49
                    null_func(self_index, executor_index);
426
15.5k
                } else {
427
15.5k
                    if (this->data[i]) {
428
3.06k
                        true_func(self_index, executor_index);
429
12.5k
                    } else {
430
12.5k
                        false_func(self_index, executor_index);
431
12.5k
                    }
432
15.5k
                }
433
15.6k
            };
434
5.39k
            if (is_const) {
435
34
                for_each_with_selector<true>(update);
436
5.36k
            } else {
437
5.36k
                for_each_with_selector<false>(update);
438
5.36k
            }
439
5.39k
        } else {
440
            // non-nullable condition column
441
113k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
113k
                if (this->data[i]) {
443
16.0k
                    true_func(self_index, executor_index);
444
97.5k
                } else {
445
97.5k
                    false_func(self_index, executor_index);
446
97.5k
                }
447
113k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
441
109k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
109k
                if (this->data[i]) {
443
14.7k
                    true_func(self_index, executor_index);
444
94.7k
                } else {
445
94.7k
                    false_func(self_index, executor_index);
446
94.7k
                }
447
109k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
441
2.62k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
2.62k
                if (this->data[i]) {
443
1.07k
                    true_func(self_index, executor_index);
444
1.55k
                } else {
445
1.55k
                    false_func(self_index, executor_index);
446
1.55k
                }
447
2.62k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
441
1.44k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.44k
                if (this->data[i]) {
443
194
                    true_func(self_index, executor_index);
444
1.25k
                } else {
445
1.25k
                    false_func(self_index, executor_index);
446
1.25k
                }
447
1.44k
            };
448
5.30k
            if (is_const) {
449
392
                for_each_with_selector<true>(update);
450
4.91k
            } else {
451
4.91k
                for_each_with_selector<false>(update);
452
4.91k
            }
453
5.30k
        }
454
10.7k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_
Line
Count
Source
420
4.43k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
4.43k
        if (this->null_map != nullptr) {
422
2.26k
            const auto& null_map_data = *(this->null_map);
423
2.26k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
2.26k
                if (null_map_data[i]) {
425
2.26k
                    null_func(self_index, executor_index);
426
2.26k
                } else {
427
2.26k
                    if (this->data[i]) {
428
2.26k
                        true_func(self_index, executor_index);
429
2.26k
                    } else {
430
2.26k
                        false_func(self_index, executor_index);
431
2.26k
                    }
432
2.26k
                }
433
2.26k
            };
434
2.26k
            if (is_const) {
435
14
                for_each_with_selector<true>(update);
436
2.24k
            } else {
437
2.24k
                for_each_with_selector<false>(update);
438
2.24k
            }
439
2.26k
        } else {
440
            // non-nullable condition column
441
2.17k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
2.17k
                if (this->data[i]) {
443
2.17k
                    true_func(self_index, executor_index);
444
2.17k
                } else {
445
2.17k
                    false_func(self_index, executor_index);
446
2.17k
                }
447
2.17k
            };
448
2.17k
            if (is_const) {
449
276
                for_each_with_selector<true>(update);
450
1.90k
            } else {
451
1.90k
                for_each_with_selector<false>(update);
452
1.90k
            }
453
2.17k
        }
454
4.43k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_
Line
Count
Source
420
1.85k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
1.85k
        if (this->null_map != nullptr) {
422
173
            const auto& null_map_data = *(this->null_map);
423
173
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
173
                if (null_map_data[i]) {
425
173
                    null_func(self_index, executor_index);
426
173
                } else {
427
173
                    if (this->data[i]) {
428
173
                        true_func(self_index, executor_index);
429
173
                    } else {
430
173
                        false_func(self_index, executor_index);
431
173
                    }
432
173
                }
433
173
            };
434
173
            if (is_const) {
435
4
                for_each_with_selector<true>(update);
436
169
            } else {
437
169
                for_each_with_selector<false>(update);
438
169
            }
439
1.68k
        } else {
440
            // non-nullable condition column
441
1.68k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.68k
                if (this->data[i]) {
443
1.68k
                    true_func(self_index, executor_index);
444
1.68k
                } else {
445
1.68k
                    false_func(self_index, executor_index);
446
1.68k
                }
447
1.68k
            };
448
1.68k
            if (is_const) {
449
116
                for_each_with_selector<true>(update);
450
1.56k
            } else {
451
1.56k
                for_each_with_selector<false>(update);
452
1.56k
            }
453
1.68k
        }
454
1.85k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_
Line
Count
Source
420
4.40k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
4.40k
        if (this->null_map != nullptr) {
422
2.96k
            const auto& null_map_data = *(this->null_map);
423
2.96k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
2.96k
                if (null_map_data[i]) {
425
2.96k
                    null_func(self_index, executor_index);
426
2.96k
                } else {
427
2.96k
                    if (this->data[i]) {
428
2.96k
                        true_func(self_index, executor_index);
429
2.96k
                    } else {
430
2.96k
                        false_func(self_index, executor_index);
431
2.96k
                    }
432
2.96k
                }
433
2.96k
            };
434
2.96k
            if (is_const) {
435
16
                for_each_with_selector<true>(update);
436
2.94k
            } else {
437
2.94k
                for_each_with_selector<false>(update);
438
2.94k
            }
439
2.96k
        } else {
440
            // non-nullable condition column
441
1.44k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.44k
                if (this->data[i]) {
443
1.44k
                    true_func(self_index, executor_index);
444
1.44k
                } else {
445
1.44k
                    false_func(self_index, executor_index);
446
1.44k
                }
447
1.44k
            };
448
1.44k
            if (is_const) {
449
0
                for_each_with_selector<true>(update);
450
1.44k
            } else {
451
1.44k
                for_each_with_selector<false>(update);
452
1.44k
            }
453
1.44k
        }
454
4.40k
    }
455
};
456
457
// Utility class for columns that return nullable values.
458
// We only care about whether the value is null, not the actual value.
459
struct ConditionColumnNullView : ColumnNullConstView, ConditionColumnViewHelper {
460
    ConditionColumnNullView(ColumnNullConstView base, const Selector* selector, size_t count)
461
687
            : ColumnNullConstView(base), ConditionColumnViewHelper(selector, count) {}
462
463
    static ConditionColumnNullView create(const ColumnPtr& column_ptr, const Selector* selector,
464
687
                                          size_t count) {
465
687
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
466
687
        return {ColumnNullConstView::create(column_ptr), selector, count};
467
687
    }
468
469
    template <typename NullFunc, typename NotNullFunc>
470
682
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
682
        if (this->null_map != nullptr) {
472
629
            const auto& null_map_data = *(this->null_map);
473
2.14k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
2.14k
                if (null_map_data[i]) {
475
283
                    null_func(self_index, executor_index);
476
1.86k
                } else {
477
1.86k
                    not_null_func(self_index, executor_index);
478
1.86k
                }
479
2.14k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_E3$_0ZNS_23execute_ifnull_selectorES8_SF_mSG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE_clEmmm
Line
Count
Source
473
1.71k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
1.71k
                if (null_map_data[i]) {
475
159
                    null_func(self_index, executor_index);
476
1.56k
                } else {
477
1.56k
                    not_null_func(self_index, executor_index);
478
1.56k
                }
479
1.71k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE_clEmmm
Line
Count
Source
473
364
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
364
                if (null_map_data[i]) {
475
98
                    null_func(self_index, executor_index);
476
266
                } else {
477
266
                    not_null_func(self_index, executor_index);
478
266
                }
479
364
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_2ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_3EEvRT_RT0_ENKUlmmmE_clEmmm
Line
Count
Source
473
60
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
60
                if (null_map_data[i]) {
475
26
                    null_func(self_index, executor_index);
476
34
                } else {
477
34
                    not_null_func(self_index, executor_index);
478
34
                }
479
60
            };
480
629
            if (is_const) {
481
16
                for_each_with_selector<true>(update);
482
613
            } else {
483
613
                for_each_with_selector<false>(update);
484
613
            }
485
629
        } else {
486
            // non-nullable condition column
487
62
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
62
                not_null_func(self_index, executor_index);
489
62
            };
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_E3$_0ZNS_23execute_ifnull_selectorES8_SF_mSG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE0_clEmmm
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE0_clEmmm
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_2ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_3EEvRT_RT0_ENKUlmmmE0_clEmmm
Line
Count
Source
487
62
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
62
                not_null_func(self_index, executor_index);
489
62
            };
490
53
            if (is_const) {
491
47
                for_each_with_selector<true>(update);
492
47
            } else {
493
6
                for_each_with_selector<false>(update);
494
6
            }
495
53
        }
496
682
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_E3$_0ZNS_23execute_ifnull_selectorES8_SF_mSG_SG_SG_E3$_1EEvRT_RT0_
Line
Count
Source
470
447
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
447
        if (this->null_map != nullptr) {
472
447
            const auto& null_map_data = *(this->null_map);
473
447
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
447
                if (null_map_data[i]) {
475
447
                    null_func(self_index, executor_index);
476
447
                } else {
477
447
                    not_null_func(self_index, executor_index);
478
447
                }
479
447
            };
480
447
            if (is_const) {
481
10
                for_each_with_selector<true>(update);
482
437
            } else {
483
437
                for_each_with_selector<false>(update);
484
437
            }
485
447
        } else {
486
            // non-nullable condition column
487
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
0
                not_null_func(self_index, executor_index);
489
0
            };
490
0
            if (is_const) {
491
0
                for_each_with_selector<true>(update);
492
0
            } else {
493
0
                for_each_with_selector<false>(update);
494
0
            }
495
0
        }
496
447
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1EEvRT_RT0_
Line
Count
Source
470
139
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
139
        if (this->null_map != nullptr) {
472
139
            const auto& null_map_data = *(this->null_map);
473
139
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
139
                if (null_map_data[i]) {
475
139
                    null_func(self_index, executor_index);
476
139
                } else {
477
139
                    not_null_func(self_index, executor_index);
478
139
                }
479
139
            };
480
139
            if (is_const) {
481
6
                for_each_with_selector<true>(update);
482
133
            } else {
483
133
                for_each_with_selector<false>(update);
484
133
            }
485
139
        } else {
486
            // non-nullable condition column
487
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
0
                not_null_func(self_index, executor_index);
489
0
            };
490
0
            if (is_const) {
491
0
                for_each_with_selector<true>(update);
492
0
            } else {
493
0
                for_each_with_selector<false>(update);
494
0
            }
495
0
        }
496
139
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_2ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_3EEvRT_RT0_
Line
Count
Source
470
96
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
96
        if (this->null_map != nullptr) {
472
43
            const auto& null_map_data = *(this->null_map);
473
43
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
43
                if (null_map_data[i]) {
475
43
                    null_func(self_index, executor_index);
476
43
                } else {
477
43
                    not_null_func(self_index, executor_index);
478
43
                }
479
43
            };
480
43
            if (is_const) {
481
0
                for_each_with_selector<true>(update);
482
43
            } else {
483
43
                for_each_with_selector<false>(update);
484
43
            }
485
53
        } else {
486
            // non-nullable condition column
487
53
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
53
                not_null_func(self_index, executor_index);
489
53
            };
490
53
            if (is_const) {
491
47
                for_each_with_selector<true>(update);
492
47
            } else {
493
6
                for_each_with_selector<false>(update);
494
6
            }
495
53
        }
496
96
    }
497
};
498
499
} // namespace doris