Coverage Report

Created: 2026-10-30 16:23

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/exprs/function/function_unary_arithmetic.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
// This file is copied from
18
// https://github.com/ClickHouse/ClickHouse/blob/master/src/Functions/FunctionUnaryArithmetic.h
19
// and modified by Doris
20
21
#pragma once
22
23
#include "core/column/column_decimal.h"
24
#include "core/column/column_vector.h"
25
#include "core/data_type/data_type_decimal.h"
26
#include "core/data_type/data_type_number.h"
27
#include "core/data_type/define_primitive_type.h"
28
#include "core/types.h"
29
#include "exprs/function/cast_type_to_either.h"
30
#include "exprs/function/function.h"
31
#include "exprs/function/function_helpers.h"
32
33
namespace doris {
34
35
template <PrimitiveType A, typename Op>
36
struct UnaryOperationImpl {
37
    static constexpr PrimitiveType ResultType = Op::ResultType;
38
    using ColVecA = typename PrimitiveTypeTraits<A>::ColumnType;
39
    using ColVecC = typename PrimitiveTypeTraits<ResultType>::ColumnType;
40
    using ArrayA = typename ColVecA::Container;
41
    using ArrayC = typename ColVecC::Container;
42
43
1.21k
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
1.21k
        size_t size = a.size();
45
90.5k
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
1.21k
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE9ENS_8SignImplIdEEE6vectorERKNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS5_IaLm4096ES8_Lm16ELm15EEE
Line
Count
Source
43
70
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
70
        size_t size = a.size();
45
181
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
70
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE3ENS_7AbsImplIaEEE6vectorERKNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS5_IsLm4096ES8_Lm16ELm15EEE
Line
Count
Source
43
72
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
72
        size_t size = a.size();
45
280
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
72
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE4ENS_7AbsImplIsEEE6vectorERKNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS5_IiLm4096ES8_Lm16ELm15EEE
Line
Count
Source
43
65
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
65
        size_t size = a.size();
45
278
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
65
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE5ENS_7AbsImplIiEEE6vectorERKNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS5_IlLm4096ES8_Lm16ELm15EEE
Line
Count
Source
43
367
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
367
        size_t size = a.size();
45
1.51k
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
367
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE6ENS_7AbsImplIlEEE6vectorERKNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS5_InLm4096ES8_Lm16ELm15EEE
Line
Count
Source
43
218
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
218
        size_t size = a.size();
45
86.6k
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
218
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE7ENS_7AbsImplInEEE6vectorERKNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERS9_
Line
Count
Source
43
16
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
16
        size_t size = a.size();
45
91
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
16
    }
Unexecuted instantiation: _ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE2ENS_7AbsImplIhEEE6vectorERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS5_IsLm4096ES8_Lm16ELm15EEE
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE28ENS_7AbsImplINS_7DecimalIiEEEEE6vectorERKNS_21DecimalPaddedPODArrayIS4_EERS8_
Line
Count
Source
43
42
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
42
        size_t size = a.size();
45
155
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
42
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE29ENS_7AbsImplINS_7DecimalIlEEEEE6vectorERKNS_21DecimalPaddedPODArrayIS4_EERS8_
Line
Count
Source
43
48
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
48
        size_t size = a.size();
45
358
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
48
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE30ENS_7AbsImplINS_12Decimal128V3EEEE6vectorERKNS_21DecimalPaddedPODArrayIS3_EERS7_
Line
Count
Source
43
9
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
9
        size_t size = a.size();
45
60
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
9
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE20ENS_7AbsImplINS_14DecimalV2ValueEEEE6vectorERKNS_21DecimalPaddedPODArrayIS3_EERS7_
Line
Count
Source
43
6
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
6
        size_t size = a.size();
45
17
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
6
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE35ENS_7AbsImplINS_7DecimalIN4wide7integerILm256EiEEEEEEE6vectorERKNS_21DecimalPaddedPODArrayIS7_EERSB_
Line
Count
Source
43
6
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
6
        size_t size = a.size();
45
36
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
6
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE8ENS_7AbsImplIfEEE6vectorERKNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERS9_
Line
Count
Source
43
33
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
33
        size_t size = a.size();
45
96
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
33
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE9ENS_7AbsImplIdEEE6vectorERKNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERS9_
Line
Count
Source
43
94
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
94
        size_t size = a.size();
45
319
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
94
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE9ENS_12NegativeImplIdEEE6vectorERKNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERS9_
Line
Count
Source
43
18
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
18
        size_t size = a.size();
45
59
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
18
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE6ENS_12NegativeImplIlEEE6vectorERKNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERS9_
Line
Count
Source
43
22
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
22
        size_t size = a.size();
45
61
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
22
    }
Unexecuted instantiation: _ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE20ENS_12NegativeImplINS_14DecimalV2ValueEEEE6vectorERKNS_21DecimalPaddedPODArrayIS3_EERS7_
Unexecuted instantiation: _ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE35ENS_12NegativeImplINS_7DecimalIN4wide7integerILm256EiEEEEEEE6vectorERKNS_21DecimalPaddedPODArrayIS7_EERSB_
Unexecuted instantiation: _ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE30ENS_12NegativeImplINS_12Decimal128V3EEEE6vectorERKNS_21DecimalPaddedPODArrayIS3_EERS7_
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE28ENS_12NegativeImplINS_7DecimalIiEEEEE6vectorERKNS_21DecimalPaddedPODArrayIS4_EERS8_
Line
Count
Source
43
12
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
12
        size_t size = a.size();
45
41
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
12
    }
Unexecuted instantiation: _ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE29ENS_12NegativeImplINS_7DecimalIlEEEEE6vectorERKNS_21DecimalPaddedPODArrayIS4_EERS8_
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE28ENS_12PositiveImplINS_7DecimalIiEEEEE6vectorERKNS_21DecimalPaddedPODArrayIS4_EERS8_
Line
Count
Source
43
10
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
10
        size_t size = a.size();
45
37
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
10
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE29ENS_12PositiveImplINS_7DecimalIlEEEEE6vectorERKNS_21DecimalPaddedPODArrayIS4_EERS8_
Line
Count
Source
43
6
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
6
        size_t size = a.size();
45
14
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
6
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE30ENS_12PositiveImplINS_12Decimal128V3EEEE6vectorERKNS_21DecimalPaddedPODArrayIS3_EERS7_
Line
Count
Source
43
15
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
15
        size_t size = a.size();
45
35
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
15
    }
Unexecuted instantiation: _ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE20ENS_12PositiveImplINS_14DecimalV2ValueEEEE6vectorERKNS_21DecimalPaddedPODArrayIS3_EERS7_
Unexecuted instantiation: _ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE35ENS_12PositiveImplINS_7DecimalIN4wide7integerILm256EiEEEEEEE6vectorERKNS_21DecimalPaddedPODArrayIS7_EERSB_
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE9ENS_11RadiansImplIdEEE6vectorERKNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERS9_
Line
Count
Source
43
18
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
18
        size_t size = a.size();
45
59
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
18
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE9ENS_11DegreesImplIdEEE6vectorERKNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERS9_
Line
Count
Source
43
22
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
22
        size_t size = a.size();
45
67
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
22
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE9ENS_11SignBitImplIdEEE6vectorERKNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS5_IhLm4096ES8_Lm16ELm15EEE
Line
Count
Source
43
25
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
25
        size_t size = a.size();
45
93
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
25
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE3ENS_10BitNotImplIaEEE6vectorERKNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERS9_
Line
Count
Source
43
2
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
2
        size_t size = a.size();
45
4
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
2
    }
Unexecuted instantiation: _ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE4ENS_10BitNotImplIsEEE6vectorERKNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERS9_
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE5ENS_10BitNotImplIiEEE6vectorERKNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERS9_
Line
Count
Source
43
2
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
2
        size_t size = a.size();
45
12
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
2
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE6ENS_10BitNotImplIlEEE6vectorERKNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERS9_
Line
Count
Source
43
3
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
3
        size_t size = a.size();
45
6
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
3
    }
Unexecuted instantiation: _ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE7ENS_10BitNotImplInEEE6vectorERKNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERS9_
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE3ENS_12BitCountImplIaEEE6vectorERKNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERS9_
Line
Count
Source
43
4
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
4
        size_t size = a.size();
45
8
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
4
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE4ENS_12BitCountImplIsEEE6vectorERKNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS5_IaLm4096ES8_Lm16ELm15EEE
Line
Count
Source
43
1
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
1
        size_t size = a.size();
45
2
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
1
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE5ENS_12BitCountImplIiEEE6vectorERKNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS5_IaLm4096ES8_Lm16ELm15EEE
Line
Count
Source
43
2
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
2
        size_t size = a.size();
45
4
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
2
    }
_ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE6ENS_12BitCountImplIlEEE6vectorERKNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS5_IaLm4096ES8_Lm16ELm15EEE
Line
Count
Source
43
8
    static void NO_INLINE vector(const ArrayA& a, ArrayC& c) {
44
8
        size_t size = a.size();
45
34
        for (size_t i = 0; i < size; ++i) c[i] = Op::apply(a[i]);
46
8
    }
Unexecuted instantiation: _ZN5doris18UnaryOperationImplILNS_13PrimitiveTypeE7ENS_12BitCountImplInEEE6vectorERKNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS5_IsLm4096ES8_Lm16ELm15EEE
47
};
48
49
template <typename>
50
struct AbsImpl;
51
template <typename>
52
struct NegativeImpl;
53
template <typename>
54
struct PositiveImpl;
55
56
/// Used to indicate undefined operation
57
struct InvalidType;
58
59
template <typename Op, typename Name, PrimitiveType param_type>
60
class FunctionUnaryArithmetic : public IFunction {
61
    using ResultDataType = typename PrimitiveTypeTraits<param_type>::DataType;
62
    static constexpr bool allow_decimal = std::string_view(Name::name) == "abs" ||
63
                                          std::string_view(Name::name) == "negative" ||
64
                                          std::string_view(Name::name) == "positive";
65
    static constexpr bool not_variadic =
66
            std::string_view(Name::name) == "degree" || std::string_view(Name::name) == "radian" ||
67
            std::string_view(Name::name) == "sign" || std::string_view(Name::name) == "signbit";
68
69
    template <typename F>
70
1.99k
    static bool cast_type(const IDataType* type, F&& f) {
71
2.00k
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
2.00k
            return f(*data_type);
73
2.00k
        }
74
18.4E
        return false;
75
1.99k
    }
_ZN5doris23FunctionUnaryArithmeticINS_8SignImplIdEENS_8NameSignELNS_13PrimitiveTypeE9EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
24
    static bool cast_type(const IDataType* type, F&& f) {
71
24
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
24
            return f(*data_type);
73
24
        }
74
0
        return false;
75
24
    }
_ZN5doris23FunctionUnaryArithmeticINS_8SignImplIdEENS_8NameSignELNS_13PrimitiveTypeE9EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
70
    static bool cast_type(const IDataType* type, F&& f) {
71
70
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
70
            return f(*data_type);
73
70
        }
74
0
        return false;
75
70
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIaEENS_7NameAbsELNS_13PrimitiveTypeE3EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
46
    static bool cast_type(const IDataType* type, F&& f) {
71
46
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
46
            return f(*data_type);
73
46
        }
74
0
        return false;
75
46
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIaEENS_7NameAbsELNS_13PrimitiveTypeE3EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
72
    static bool cast_type(const IDataType* type, F&& f) {
71
72
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
72
            return f(*data_type);
73
72
        }
74
0
        return false;
75
72
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIsEENS_7NameAbsELNS_13PrimitiveTypeE4EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
26
    static bool cast_type(const IDataType* type, F&& f) {
71
27
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
27
            return f(*data_type);
73
27
        }
74
18.4E
        return false;
75
26
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIsEENS_7NameAbsELNS_13PrimitiveTypeE4EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
65
    static bool cast_type(const IDataType* type, F&& f) {
71
65
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
65
            return f(*data_type);
73
65
        }
74
0
        return false;
75
65
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIiEENS_7NameAbsELNS_13PrimitiveTypeE5EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
227
    static bool cast_type(const IDataType* type, F&& f) {
71
227
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
227
            return f(*data_type);
73
227
        }
74
0
        return false;
75
227
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIiEENS_7NameAbsELNS_13PrimitiveTypeE5EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
364
    static bool cast_type(const IDataType* type, F&& f) {
71
365
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
365
            return f(*data_type);
73
365
        }
74
18.4E
        return false;
75
364
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIlEENS_7NameAbsELNS_13PrimitiveTypeE6EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
159
    static bool cast_type(const IDataType* type, F&& f) {
71
159
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
158
            return f(*data_type);
73
158
        }
74
1
        return false;
75
159
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIlEENS_7NameAbsELNS_13PrimitiveTypeE6EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
216
    static bool cast_type(const IDataType* type, F&& f) {
71
217
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
217
            return f(*data_type);
73
217
        }
74
18.4E
        return false;
75
216
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplInEENS_7NameAbsELNS_13PrimitiveTypeE7EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
8
    static bool cast_type(const IDataType* type, F&& f) {
71
8
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
8
            return f(*data_type);
73
8
        }
74
0
        return false;
75
8
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplInEENS_7NameAbsELNS_13PrimitiveTypeE7EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
16
    static bool cast_type(const IDataType* type, F&& f) {
71
16
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
16
            return f(*data_type);
73
16
        }
74
0
        return false;
75
16
    }
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIhEENS_7NameAbsELNS_13PrimitiveTypeE2EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIhEENS_7NameAbsELNS_13PrimitiveTypeE2EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIiEEEENS_7NameAbsELNS_13PrimitiveTypeE28EE9cast_typeIZNKS7_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISD_EEEUlRKT_E_EEbPSC_OSI_
Line
Count
Source
70
22
    static bool cast_type(const IDataType* type, F&& f) {
71
22
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
21
            return f(*data_type);
73
21
        }
74
1
        return false;
75
22
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIiEEEENS_7NameAbsELNS_13PrimitiveTypeE28EE9cast_typeIZNKS7_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSI_
Line
Count
Source
70
42
    static bool cast_type(const IDataType* type, F&& f) {
71
42
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
42
            return f(*data_type);
73
42
        }
74
0
        return false;
75
42
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIlEEEENS_7NameAbsELNS_13PrimitiveTypeE29EE9cast_typeIZNKS7_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISD_EEEUlRKT_E_EEbPSC_OSI_
Line
Count
Source
70
38
    static bool cast_type(const IDataType* type, F&& f) {
71
39
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
39
            return f(*data_type);
73
39
        }
74
18.4E
        return false;
75
38
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIlEEEENS_7NameAbsELNS_13PrimitiveTypeE29EE9cast_typeIZNKS7_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSI_
Line
Count
Source
70
48
    static bool cast_type(const IDataType* type, F&& f) {
71
48
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
48
            return f(*data_type);
73
48
        }
74
0
        return false;
75
48
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_12Decimal128V3EEENS_7NameAbsELNS_13PrimitiveTypeE30EE9cast_typeIZNKS6_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EEEUlRKT_E_EEbPSB_OSH_
Line
Count
Source
70
6
    static bool cast_type(const IDataType* type, F&& f) {
71
7
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
7
            return f(*data_type);
73
7
        }
74
18.4E
        return false;
75
6
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_12Decimal128V3EEENS_7NameAbsELNS_13PrimitiveTypeE30EE9cast_typeIZNKS6_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSH_
Line
Count
Source
70
9
    static bool cast_type(const IDataType* type, F&& f) {
71
9
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
9
            return f(*data_type);
73
9
        }
74
0
        return false;
75
9
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_14DecimalV2ValueEEENS_7NameAbsELNS_13PrimitiveTypeE20EE9cast_typeIZNKS6_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EEEUlRKT_E_EEbPSB_OSH_
Line
Count
Source
70
1
    static bool cast_type(const IDataType* type, F&& f) {
71
1
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
1
            return f(*data_type);
73
1
        }
74
0
        return false;
75
1
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_14DecimalV2ValueEEENS_7NameAbsELNS_13PrimitiveTypeE20EE9cast_typeIZNKS6_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSH_
Line
Count
Source
70
6
    static bool cast_type(const IDataType* type, F&& f) {
71
6
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
6
            return f(*data_type);
73
6
        }
74
0
        return false;
75
6
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_7NameAbsELNS_13PrimitiveTypeE35EE9cast_typeIZNKSA_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISG_EEEUlRKT_E_EEbPSF_OSL_
Line
Count
Source
70
9
    static bool cast_type(const IDataType* type, F&& f) {
71
10
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
10
            return f(*data_type);
73
10
        }
74
18.4E
        return false;
75
9
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_7NameAbsELNS_13PrimitiveTypeE35EE9cast_typeIZNKSA_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSL_
Line
Count
Source
70
6
    static bool cast_type(const IDataType* type, F&& f) {
71
6
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
6
            return f(*data_type);
73
6
        }
74
0
        return false;
75
6
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIfEENS_7NameAbsELNS_13PrimitiveTypeE8EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
15
    static bool cast_type(const IDataType* type, F&& f) {
71
15
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
15
            return f(*data_type);
73
15
        }
74
0
        return false;
75
15
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIfEENS_7NameAbsELNS_13PrimitiveTypeE8EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
33
    static bool cast_type(const IDataType* type, F&& f) {
71
33
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
33
            return f(*data_type);
73
33
        }
74
0
        return false;
75
33
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIdEENS_7NameAbsELNS_13PrimitiveTypeE9EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
46
    static bool cast_type(const IDataType* type, F&& f) {
71
46
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
46
            return f(*data_type);
73
46
        }
74
0
        return false;
75
46
    }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIdEENS_7NameAbsELNS_13PrimitiveTypeE9EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
94
    static bool cast_type(const IDataType* type, F&& f) {
71
94
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
94
            return f(*data_type);
73
94
        }
74
0
        return false;
75
94
    }
_ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplIdEENS_12NameNegativeELNS_13PrimitiveTypeE9EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
12
    static bool cast_type(const IDataType* type, F&& f) {
71
12
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
12
            return f(*data_type);
73
12
        }
74
0
        return false;
75
12
    }
_ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplIdEENS_12NameNegativeELNS_13PrimitiveTypeE9EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
18
    static bool cast_type(const IDataType* type, F&& f) {
71
18
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
18
            return f(*data_type);
73
18
        }
74
0
        return false;
75
18
    }
_ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplIlEENS_12NameNegativeELNS_13PrimitiveTypeE6EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
18
    static bool cast_type(const IDataType* type, F&& f) {
71
18
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
18
            return f(*data_type);
73
18
        }
74
0
        return false;
75
18
    }
_ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplIlEENS_12NameNegativeELNS_13PrimitiveTypeE6EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
22
    static bool cast_type(const IDataType* type, F&& f) {
71
22
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
22
            return f(*data_type);
73
22
        }
74
0
        return false;
75
22
    }
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_14DecimalV2ValueEEENS_12NameNegativeELNS_13PrimitiveTypeE20EE9cast_typeIZNKS6_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EEEUlRKT_E_EEbPSB_OSH_
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_14DecimalV2ValueEEENS_12NameNegativeELNS_13PrimitiveTypeE20EE9cast_typeIZNKS6_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSH_
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NameNegativeELNS_13PrimitiveTypeE35EE9cast_typeIZNKSA_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISG_EEEUlRKT_E_EEbPSF_OSL_
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NameNegativeELNS_13PrimitiveTypeE35EE9cast_typeIZNKSA_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSL_
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_12Decimal128V3EEENS_12NameNegativeELNS_13PrimitiveTypeE30EE9cast_typeIZNKS6_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EEEUlRKT_E_EEbPSB_OSH_
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_12Decimal128V3EEENS_12NameNegativeELNS_13PrimitiveTypeE30EE9cast_typeIZNKS6_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSH_
_ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIiEEEENS_12NameNegativeELNS_13PrimitiveTypeE28EE9cast_typeIZNKS7_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISD_EEEUlRKT_E_EEbPSC_OSI_
Line
Count
Source
70
6
    static bool cast_type(const IDataType* type, F&& f) {
71
6
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
6
            return f(*data_type);
73
6
        }
74
0
        return false;
75
6
    }
_ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIiEEEENS_12NameNegativeELNS_13PrimitiveTypeE28EE9cast_typeIZNKS7_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSI_
Line
Count
Source
70
12
    static bool cast_type(const IDataType* type, F&& f) {
71
12
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
12
            return f(*data_type);
73
12
        }
74
0
        return false;
75
12
    }
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIlEEEENS_12NameNegativeELNS_13PrimitiveTypeE29EE9cast_typeIZNKS7_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISD_EEEUlRKT_E_EEbPSC_OSI_
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIlEEEENS_12NameNegativeELNS_13PrimitiveTypeE29EE9cast_typeIZNKS7_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSI_
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIiEEEENS_12NamePositiveELNS_13PrimitiveTypeE28EE9cast_typeIZNKS7_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISD_EEEUlRKT_E_EEbPSC_OSI_
Line
Count
Source
70
4
    static bool cast_type(const IDataType* type, F&& f) {
71
4
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
4
            return f(*data_type);
73
4
        }
74
0
        return false;
75
4
    }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIiEEEENS_12NamePositiveELNS_13PrimitiveTypeE28EE9cast_typeIZNKS7_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSI_
Line
Count
Source
70
10
    static bool cast_type(const IDataType* type, F&& f) {
71
10
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
10
            return f(*data_type);
73
10
        }
74
0
        return false;
75
10
    }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIlEEEENS_12NamePositiveELNS_13PrimitiveTypeE29EE9cast_typeIZNKS7_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISD_EEEUlRKT_E_EEbPSC_OSI_
Line
Count
Source
70
6
    static bool cast_type(const IDataType* type, F&& f) {
71
6
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
6
            return f(*data_type);
73
6
        }
74
0
        return false;
75
6
    }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIlEEEENS_12NamePositiveELNS_13PrimitiveTypeE29EE9cast_typeIZNKS7_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSI_
Line
Count
Source
70
6
    static bool cast_type(const IDataType* type, F&& f) {
71
6
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
6
            return f(*data_type);
73
6
        }
74
0
        return false;
75
6
    }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_12Decimal128V3EEENS_12NamePositiveELNS_13PrimitiveTypeE30EE9cast_typeIZNKS6_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EEEUlRKT_E_EEbPSB_OSH_
Line
Count
Source
70
2
    static bool cast_type(const IDataType* type, F&& f) {
71
2
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
2
            return f(*data_type);
73
2
        }
74
0
        return false;
75
2
    }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_12Decimal128V3EEENS_12NamePositiveELNS_13PrimitiveTypeE30EE9cast_typeIZNKS6_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSH_
Line
Count
Source
70
15
    static bool cast_type(const IDataType* type, F&& f) {
71
15
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
15
            return f(*data_type);
73
15
        }
74
0
        return false;
75
15
    }
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_14DecimalV2ValueEEENS_12NamePositiveELNS_13PrimitiveTypeE20EE9cast_typeIZNKS6_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EEEUlRKT_E_EEbPSB_OSH_
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_14DecimalV2ValueEEENS_12NamePositiveELNS_13PrimitiveTypeE20EE9cast_typeIZNKS6_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSH_
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NamePositiveELNS_13PrimitiveTypeE35EE9cast_typeIZNKSA_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISG_EEEUlRKT_E_EEbPSF_OSL_
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NamePositiveELNS_13PrimitiveTypeE35EE9cast_typeIZNKSA_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSL_
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplIdEENS_12NamePositiveELNS_13PrimitiveTypeE9EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
4
    static bool cast_type(const IDataType* type, F&& f) {
71
4
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
4
            return f(*data_type);
73
4
        }
74
0
        return false;
75
4
    }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplIdEENS_12NamePositiveELNS_13PrimitiveTypeE9EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
10
    static bool cast_type(const IDataType* type, F&& f) {
71
10
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
10
            return f(*data_type);
73
10
        }
74
0
        return false;
75
10
    }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplIlEENS_12NamePositiveELNS_13PrimitiveTypeE6EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
8
    static bool cast_type(const IDataType* type, F&& f) {
71
8
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
8
            return f(*data_type);
73
8
        }
74
0
        return false;
75
8
    }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplIlEENS_12NamePositiveELNS_13PrimitiveTypeE6EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
14
    static bool cast_type(const IDataType* type, F&& f) {
71
14
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
14
            return f(*data_type);
73
14
        }
74
0
        return false;
75
14
    }
_ZN5doris23FunctionUnaryArithmeticINS_11RadiansImplIdEENS_11NameRadiansELNS_13PrimitiveTypeE9EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
13
    static bool cast_type(const IDataType* type, F&& f) {
71
13
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
13
            return f(*data_type);
73
13
        }
74
0
        return false;
75
13
    }
_ZN5doris23FunctionUnaryArithmeticINS_11RadiansImplIdEENS_11NameRadiansELNS_13PrimitiveTypeE9EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
18
    static bool cast_type(const IDataType* type, F&& f) {
71
18
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
18
            return f(*data_type);
73
18
        }
74
0
        return false;
75
18
    }
_ZN5doris23FunctionUnaryArithmeticINS_11DegreesImplIdEENS_11NameDegreesELNS_13PrimitiveTypeE9EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
17
    static bool cast_type(const IDataType* type, F&& f) {
71
17
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
17
            return f(*data_type);
73
17
        }
74
0
        return false;
75
17
    }
_ZN5doris23FunctionUnaryArithmeticINS_11DegreesImplIdEENS_11NameDegreesELNS_13PrimitiveTypeE9EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
22
    static bool cast_type(const IDataType* type, F&& f) {
71
22
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
22
            return f(*data_type);
73
22
        }
74
0
        return false;
75
22
    }
_ZN5doris23FunctionUnaryArithmeticINS_11SignBitImplIdEENS_11NameSignBitELNS_13PrimitiveTypeE9EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
20
    static bool cast_type(const IDataType* type, F&& f) {
71
20
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
20
            return f(*data_type);
73
20
        }
74
0
        return false;
75
20
    }
_ZN5doris23FunctionUnaryArithmeticINS_11SignBitImplIdEENS_11NameSignBitELNS_13PrimitiveTypeE9EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
24
    static bool cast_type(const IDataType* type, F&& f) {
71
25
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
25
            return f(*data_type);
73
25
        }
74
18.4E
        return false;
75
24
    }
_ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplIaEENS_10NameBitNotELNS_13PrimitiveTypeE3EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
2
    static bool cast_type(const IDataType* type, F&& f) {
71
2
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
2
            return f(*data_type);
73
2
        }
74
0
        return false;
75
2
    }
_ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplIaEENS_10NameBitNotELNS_13PrimitiveTypeE3EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
2
    static bool cast_type(const IDataType* type, F&& f) {
71
2
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
2
            return f(*data_type);
73
2
        }
74
0
        return false;
75
2
    }
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplIsEENS_10NameBitNotELNS_13PrimitiveTypeE4EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplIsEENS_10NameBitNotELNS_13PrimitiveTypeE4EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
_ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplIiEENS_10NameBitNotELNS_13PrimitiveTypeE5EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
2
    static bool cast_type(const IDataType* type, F&& f) {
71
2
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
2
            return f(*data_type);
73
2
        }
74
0
        return false;
75
2
    }
_ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplIiEENS_10NameBitNotELNS_13PrimitiveTypeE5EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
2
    static bool cast_type(const IDataType* type, F&& f) {
71
2
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
2
            return f(*data_type);
73
2
        }
74
0
        return false;
75
2
    }
_ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplIlEENS_10NameBitNotELNS_13PrimitiveTypeE6EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
4
    static bool cast_type(const IDataType* type, F&& f) {
71
4
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
4
            return f(*data_type);
73
4
        }
74
0
        return false;
75
4
    }
_ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplIlEENS_10NameBitNotELNS_13PrimitiveTypeE6EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
3
    static bool cast_type(const IDataType* type, F&& f) {
71
3
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
3
            return f(*data_type);
73
3
        }
74
0
        return false;
75
3
    }
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplInEENS_10NameBitNotELNS_13PrimitiveTypeE7EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplInEENS_10NameBitNotELNS_13PrimitiveTypeE7EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
_ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplIaEENS_12NameBitCountELNS_13PrimitiveTypeE3EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
7
    static bool cast_type(const IDataType* type, F&& f) {
71
7
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
7
            return f(*data_type);
73
7
        }
74
0
        return false;
75
7
    }
_ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplIaEENS_12NameBitCountELNS_13PrimitiveTypeE3EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
4
    static bool cast_type(const IDataType* type, F&& f) {
71
4
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
4
            return f(*data_type);
73
4
        }
74
0
        return false;
75
4
    }
_ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplIsEENS_12NameBitCountELNS_13PrimitiveTypeE4EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
1
    static bool cast_type(const IDataType* type, F&& f) {
71
1
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
1
            return f(*data_type);
73
1
        }
74
0
        return false;
75
1
    }
_ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplIsEENS_12NameBitCountELNS_13PrimitiveTypeE4EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
1
    static bool cast_type(const IDataType* type, F&& f) {
71
1
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
1
            return f(*data_type);
73
1
        }
74
0
        return false;
75
1
    }
_ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplIiEENS_12NameBitCountELNS_13PrimitiveTypeE5EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
2
    static bool cast_type(const IDataType* type, F&& f) {
71
2
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
2
            return f(*data_type);
73
2
        }
74
0
        return false;
75
2
    }
_ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplIiEENS_12NameBitCountELNS_13PrimitiveTypeE5EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
2
    static bool cast_type(const IDataType* type, F&& f) {
71
2
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
2
            return f(*data_type);
73
2
        }
74
0
        return false;
75
2
    }
_ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplIlEENS_12NameBitCountELNS_13PrimitiveTypeE6EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Line
Count
Source
70
8
    static bool cast_type(const IDataType* type, F&& f) {
71
8
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
8
            return f(*data_type);
73
8
        }
74
0
        return false;
75
8
    }
_ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplIlEENS_12NameBitCountELNS_13PrimitiveTypeE6EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
Line
Count
Source
70
8
    static bool cast_type(const IDataType* type, F&& f) {
71
8
        if (const auto* data_type = typeid_cast<const ResultDataType*>(type)) {
72
8
            return f(*data_type);
73
8
        }
74
0
        return false;
75
8
    }
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplInEENS_12NameBitCountELNS_13PrimitiveTypeE7EE9cast_typeIZNKS5_20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEEUlRKT_E_EEbPSA_OSG_
Unexecuted instantiation: _ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplInEENS_12NameBitCountELNS_13PrimitiveTypeE7EE9cast_typeIZNKS5_12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmEUlRKT_E_EEbPKNS_9IDataTypeEOSG_
76
77
public:
78
    static constexpr auto name = Name::name;
79
1.21k
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_8SignImplIdEENS_8NameSignELNS_13PrimitiveTypeE9EE6createEv
Line
Count
Source
79
35
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIaEENS_7NameAbsELNS_13PrimitiveTypeE3EE6createEv
Line
Count
Source
79
57
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIsEENS_7NameAbsELNS_13PrimitiveTypeE4EE6createEv
Line
Count
Source
79
38
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIiEENS_7NameAbsELNS_13PrimitiveTypeE5EE6createEv
Line
Count
Source
79
239
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIlEENS_7NameAbsELNS_13PrimitiveTypeE6EE6createEv
Line
Count
Source
79
170
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplInEENS_7NameAbsELNS_13PrimitiveTypeE7EE6createEv
Line
Count
Source
79
19
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIhEENS_7NameAbsELNS_13PrimitiveTypeE2EE6createEv
Line
Count
Source
79
11
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIiEEEENS_7NameAbsELNS_13PrimitiveTypeE28EE6createEv
Line
Count
Source
79
33
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIlEEEENS_7NameAbsELNS_13PrimitiveTypeE29EE6createEv
Line
Count
Source
79
50
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_12Decimal128V3EEENS_7NameAbsELNS_13PrimitiveTypeE30EE6createEv
Line
Count
Source
79
17
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_14DecimalV2ValueEEENS_7NameAbsELNS_13PrimitiveTypeE20EE6createEv
Line
Count
Source
79
12
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_7NameAbsELNS_13PrimitiveTypeE35EE6createEv
Line
Count
Source
79
21
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIfEENS_7NameAbsELNS_13PrimitiveTypeE8EE6createEv
Line
Count
Source
79
26
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_7AbsImplIdEENS_7NameAbsELNS_13PrimitiveTypeE9EE6createEv
Line
Count
Source
79
57
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplIdEENS_12NameNegativeELNS_13PrimitiveTypeE9EE6createEv
Line
Count
Source
79
23
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplIlEENS_12NameNegativeELNS_13PrimitiveTypeE6EE6createEv
Line
Count
Source
79
29
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_14DecimalV2ValueEEENS_12NameNegativeELNS_13PrimitiveTypeE20EE6createEv
Line
Count
Source
79
11
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NameNegativeELNS_13PrimitiveTypeE35EE6createEv
Line
Count
Source
79
11
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_12Decimal128V3EEENS_12NameNegativeELNS_13PrimitiveTypeE30EE6createEv
Line
Count
Source
79
11
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIiEEEENS_12NameNegativeELNS_13PrimitiveTypeE28EE6createEv
Line
Count
Source
79
17
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIlEEEENS_12NameNegativeELNS_13PrimitiveTypeE29EE6createEv
Line
Count
Source
79
11
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIiEEEENS_12NamePositiveELNS_13PrimitiveTypeE28EE6createEv
Line
Count
Source
79
15
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIlEEEENS_12NamePositiveELNS_13PrimitiveTypeE29EE6createEv
Line
Count
Source
79
17
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_12Decimal128V3EEENS_12NamePositiveELNS_13PrimitiveTypeE30EE6createEv
Line
Count
Source
79
13
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_14DecimalV2ValueEEENS_12NamePositiveELNS_13PrimitiveTypeE20EE6createEv
Line
Count
Source
79
11
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NamePositiveELNS_13PrimitiveTypeE35EE6createEv
Line
Count
Source
79
11
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplIdEENS_12NamePositiveELNS_13PrimitiveTypeE9EE6createEv
Line
Count
Source
79
15
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12PositiveImplIlEENS_12NamePositiveELNS_13PrimitiveTypeE6EE6createEv
Line
Count
Source
79
19
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_11RadiansImplIdEENS_11NameRadiansELNS_13PrimitiveTypeE9EE6createEv
Line
Count
Source
79
24
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_11DegreesImplIdEENS_11NameDegreesELNS_13PrimitiveTypeE9EE6createEv
Line
Count
Source
79
28
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_11SignBitImplIdEENS_11NameSignBitELNS_13PrimitiveTypeE9EE6createEv
Line
Count
Source
79
31
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplIaEENS_10NameBitNotELNS_13PrimitiveTypeE3EE6createEv
Line
Count
Source
79
13
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplIsEENS_10NameBitNotELNS_13PrimitiveTypeE4EE6createEv
Line
Count
Source
79
11
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplIiEENS_10NameBitNotELNS_13PrimitiveTypeE5EE6createEv
Line
Count
Source
79
13
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplIlEENS_10NameBitNotELNS_13PrimitiveTypeE6EE6createEv
Line
Count
Source
79
15
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_10BitNotImplInEENS_10NameBitNotELNS_13PrimitiveTypeE7EE6createEv
Line
Count
Source
79
11
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplIaEENS_12NameBitCountELNS_13PrimitiveTypeE3EE6createEv
Line
Count
Source
79
18
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplIsEENS_12NameBitCountELNS_13PrimitiveTypeE4EE6createEv
Line
Count
Source
79
12
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplIiEENS_12NameBitCountELNS_13PrimitiveTypeE5EE6createEv
Line
Count
Source
79
13
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplIlEENS_12NameBitCountELNS_13PrimitiveTypeE6EE6createEv
Line
Count
Source
79
19
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
_ZN5doris23FunctionUnaryArithmeticINS_12BitCountImplInEENS_12NameBitCountELNS_13PrimitiveTypeE7EE6createEv
Line
Count
Source
79
11
    static FunctionPtr create() { return std::make_shared<FunctionUnaryArithmetic>(); }
80
81
4
    String get_name() const override { return name; }
_ZNK5doris23FunctionUnaryArithmeticINS_8SignImplIdEENS_8NameSignELNS_13PrimitiveTypeE9EE8get_nameB5cxx11Ev
Line
Count
Source
81
2
    String get_name() const override { return name; }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIaEENS_7NameAbsELNS_13PrimitiveTypeE3EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIsEENS_7NameAbsELNS_13PrimitiveTypeE4EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIiEENS_7NameAbsELNS_13PrimitiveTypeE5EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIlEENS_7NameAbsELNS_13PrimitiveTypeE6EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplInEENS_7NameAbsELNS_13PrimitiveTypeE7EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIhEENS_7NameAbsELNS_13PrimitiveTypeE2EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIiEEEENS_7NameAbsELNS_13PrimitiveTypeE28EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIlEEEENS_7NameAbsELNS_13PrimitiveTypeE29EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_12Decimal128V3EEENS_7NameAbsELNS_13PrimitiveTypeE30EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_14DecimalV2ValueEEENS_7NameAbsELNS_13PrimitiveTypeE20EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_7NameAbsELNS_13PrimitiveTypeE35EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIfEENS_7NameAbsELNS_13PrimitiveTypeE8EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIdEENS_7NameAbsELNS_13PrimitiveTypeE9EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIdEENS_12NameNegativeELNS_13PrimitiveTypeE9EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIlEENS_12NameNegativeELNS_13PrimitiveTypeE6EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_14DecimalV2ValueEEENS_12NameNegativeELNS_13PrimitiveTypeE20EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NameNegativeELNS_13PrimitiveTypeE35EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_12Decimal128V3EEENS_12NameNegativeELNS_13PrimitiveTypeE30EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIiEEEENS_12NameNegativeELNS_13PrimitiveTypeE28EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIlEEEENS_12NameNegativeELNS_13PrimitiveTypeE29EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIiEEEENS_12NamePositiveELNS_13PrimitiveTypeE28EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIlEEEENS_12NamePositiveELNS_13PrimitiveTypeE29EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_12Decimal128V3EEENS_12NamePositiveELNS_13PrimitiveTypeE30EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_14DecimalV2ValueEEENS_12NamePositiveELNS_13PrimitiveTypeE20EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NamePositiveELNS_13PrimitiveTypeE35EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIdEENS_12NamePositiveELNS_13PrimitiveTypeE9EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIlEENS_12NamePositiveELNS_13PrimitiveTypeE6EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_11RadiansImplIdEENS_11NameRadiansELNS_13PrimitiveTypeE9EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_11DegreesImplIdEENS_11NameDegreesELNS_13PrimitiveTypeE9EE8get_nameB5cxx11Ev
_ZNK5doris23FunctionUnaryArithmeticINS_11SignBitImplIdEENS_11NameSignBitELNS_13PrimitiveTypeE9EE8get_nameB5cxx11Ev
Line
Count
Source
81
2
    String get_name() const override { return name; }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIaEENS_10NameBitNotELNS_13PrimitiveTypeE3EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIsEENS_10NameBitNotELNS_13PrimitiveTypeE4EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIiEENS_10NameBitNotELNS_13PrimitiveTypeE5EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIlEENS_10NameBitNotELNS_13PrimitiveTypeE6EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplInEENS_10NameBitNotELNS_13PrimitiveTypeE7EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIaEENS_12NameBitCountELNS_13PrimitiveTypeE3EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIsEENS_12NameBitCountELNS_13PrimitiveTypeE4EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIiEENS_12NameBitCountELNS_13PrimitiveTypeE5EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIlEENS_12NameBitCountELNS_13PrimitiveTypeE6EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplInEENS_12NameBitCountELNS_13PrimitiveTypeE7EE8get_nameB5cxx11Ev
82
83
44
    size_t get_number_of_arguments() const override { return 1; }
_ZNK5doris23FunctionUnaryArithmeticINS_8SignImplIdEENS_8NameSignELNS_13PrimitiveTypeE9EE23get_number_of_argumentsEv
Line
Count
Source
83
24
    size_t get_number_of_arguments() const override { return 1; }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIaEENS_7NameAbsELNS_13PrimitiveTypeE3EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIsEENS_7NameAbsELNS_13PrimitiveTypeE4EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIiEENS_7NameAbsELNS_13PrimitiveTypeE5EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIlEENS_7NameAbsELNS_13PrimitiveTypeE6EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplInEENS_7NameAbsELNS_13PrimitiveTypeE7EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIhEENS_7NameAbsELNS_13PrimitiveTypeE2EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIiEEEENS_7NameAbsELNS_13PrimitiveTypeE28EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIlEEEENS_7NameAbsELNS_13PrimitiveTypeE29EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_12Decimal128V3EEENS_7NameAbsELNS_13PrimitiveTypeE30EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_14DecimalV2ValueEEENS_7NameAbsELNS_13PrimitiveTypeE20EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_7NameAbsELNS_13PrimitiveTypeE35EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIfEENS_7NameAbsELNS_13PrimitiveTypeE8EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIdEENS_7NameAbsELNS_13PrimitiveTypeE9EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIdEENS_12NameNegativeELNS_13PrimitiveTypeE9EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIlEENS_12NameNegativeELNS_13PrimitiveTypeE6EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_14DecimalV2ValueEEENS_12NameNegativeELNS_13PrimitiveTypeE20EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NameNegativeELNS_13PrimitiveTypeE35EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_12Decimal128V3EEENS_12NameNegativeELNS_13PrimitiveTypeE30EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIiEEEENS_12NameNegativeELNS_13PrimitiveTypeE28EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIlEEEENS_12NameNegativeELNS_13PrimitiveTypeE29EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIiEEEENS_12NamePositiveELNS_13PrimitiveTypeE28EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIlEEEENS_12NamePositiveELNS_13PrimitiveTypeE29EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_12Decimal128V3EEENS_12NamePositiveELNS_13PrimitiveTypeE30EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_14DecimalV2ValueEEENS_12NamePositiveELNS_13PrimitiveTypeE20EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NamePositiveELNS_13PrimitiveTypeE35EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIdEENS_12NamePositiveELNS_13PrimitiveTypeE9EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIlEENS_12NamePositiveELNS_13PrimitiveTypeE6EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_11RadiansImplIdEENS_11NameRadiansELNS_13PrimitiveTypeE9EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_11DegreesImplIdEENS_11NameDegreesELNS_13PrimitiveTypeE9EE23get_number_of_argumentsEv
_ZNK5doris23FunctionUnaryArithmeticINS_11SignBitImplIdEENS_11NameSignBitELNS_13PrimitiveTypeE9EE23get_number_of_argumentsEv
Line
Count
Source
83
20
    size_t get_number_of_arguments() const override { return 1; }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIaEENS_10NameBitNotELNS_13PrimitiveTypeE3EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIsEENS_10NameBitNotELNS_13PrimitiveTypeE4EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIiEENS_10NameBitNotELNS_13PrimitiveTypeE5EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIlEENS_10NameBitNotELNS_13PrimitiveTypeE6EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplInEENS_10NameBitNotELNS_13PrimitiveTypeE7EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIaEENS_12NameBitCountELNS_13PrimitiveTypeE3EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIsEENS_12NameBitCountELNS_13PrimitiveTypeE4EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIiEENS_12NameBitCountELNS_13PrimitiveTypeE5EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIlEENS_12NameBitCountELNS_13PrimitiveTypeE6EE23get_number_of_argumentsEv
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplInEENS_12NameBitCountELNS_13PrimitiveTypeE7EE23get_number_of_argumentsEv
84
85
845
    bool is_variadic() const override {
86
845
        if constexpr (not_variadic) {
87
48
            return false;
88
48
        }
89
0
        return true;
90
845
    }
_ZNK5doris23FunctionUnaryArithmeticINS_8SignImplIdEENS_8NameSignELNS_13PrimitiveTypeE9EE11is_variadicEv
Line
Count
Source
85
26
    bool is_variadic() const override {
86
26
        if constexpr (not_variadic) {
87
26
            return false;
88
26
        }
89
0
        return true;
90
26
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIaEENS_7NameAbsELNS_13PrimitiveTypeE3EE11is_variadicEv
Line
Count
Source
85
48
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
48
        return true;
90
48
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIsEENS_7NameAbsELNS_13PrimitiveTypeE4EE11is_variadicEv
Line
Count
Source
85
29
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
29
        return true;
90
29
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIiEENS_7NameAbsELNS_13PrimitiveTypeE5EE11is_variadicEv
Line
Count
Source
85
230
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
230
        return true;
90
230
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIlEENS_7NameAbsELNS_13PrimitiveTypeE6EE11is_variadicEv
Line
Count
Source
85
160
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
160
        return true;
90
160
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplInEENS_7NameAbsELNS_13PrimitiveTypeE7EE11is_variadicEv
Line
Count
Source
85
8
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
8
        return true;
90
8
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIhEENS_7NameAbsELNS_13PrimitiveTypeE2EE11is_variadicEv
Line
Count
Source
85
2
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
2
        return true;
90
2
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIiEEEENS_7NameAbsELNS_13PrimitiveTypeE28EE11is_variadicEv
Line
Count
Source
85
23
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
23
        return true;
90
23
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIlEEEENS_7NameAbsELNS_13PrimitiveTypeE29EE11is_variadicEv
Line
Count
Source
85
41
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
41
        return true;
90
41
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_12Decimal128V3EEENS_7NameAbsELNS_13PrimitiveTypeE30EE11is_variadicEv
Line
Count
Source
85
8
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
8
        return true;
90
8
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_14DecimalV2ValueEEENS_7NameAbsELNS_13PrimitiveTypeE20EE11is_variadicEv
Line
Count
Source
85
3
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
3
        return true;
90
3
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_7NameAbsELNS_13PrimitiveTypeE35EE11is_variadicEv
Line
Count
Source
85
12
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
12
        return true;
90
12
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIfEENS_7NameAbsELNS_13PrimitiveTypeE8EE11is_variadicEv
Line
Count
Source
85
17
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
17
        return true;
90
17
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIdEENS_7NameAbsELNS_13PrimitiveTypeE9EE11is_variadicEv
Line
Count
Source
85
48
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
48
        return true;
90
48
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIdEENS_12NameNegativeELNS_13PrimitiveTypeE9EE11is_variadicEv
Line
Count
Source
85
14
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
14
        return true;
90
14
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIlEENS_12NameNegativeELNS_13PrimitiveTypeE6EE11is_variadicEv
Line
Count
Source
85
20
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
20
        return true;
90
20
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_14DecimalV2ValueEEENS_12NameNegativeELNS_13PrimitiveTypeE20EE11is_variadicEv
Line
Count
Source
85
2
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
2
        return true;
90
2
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NameNegativeELNS_13PrimitiveTypeE35EE11is_variadicEv
Line
Count
Source
85
2
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
2
        return true;
90
2
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_12Decimal128V3EEENS_12NameNegativeELNS_13PrimitiveTypeE30EE11is_variadicEv
Line
Count
Source
85
2
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
2
        return true;
90
2
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIiEEEENS_12NameNegativeELNS_13PrimitiveTypeE28EE11is_variadicEv
Line
Count
Source
85
8
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
8
        return true;
90
8
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIlEEEENS_12NameNegativeELNS_13PrimitiveTypeE29EE11is_variadicEv
Line
Count
Source
85
2
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
2
        return true;
90
2
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIiEEEENS_12NamePositiveELNS_13PrimitiveTypeE28EE11is_variadicEv
Line
Count
Source
85
6
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
6
        return true;
90
6
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIlEEEENS_12NamePositiveELNS_13PrimitiveTypeE29EE11is_variadicEv
Line
Count
Source
85
8
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
8
        return true;
90
8
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_12Decimal128V3EEENS_12NamePositiveELNS_13PrimitiveTypeE30EE11is_variadicEv
Line
Count
Source
85
4
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
4
        return true;
90
4
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_14DecimalV2ValueEEENS_12NamePositiveELNS_13PrimitiveTypeE20EE11is_variadicEv
Line
Count
Source
85
2
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
2
        return true;
90
2
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NamePositiveELNS_13PrimitiveTypeE35EE11is_variadicEv
Line
Count
Source
85
2
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
2
        return true;
90
2
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIdEENS_12NamePositiveELNS_13PrimitiveTypeE9EE11is_variadicEv
Line
Count
Source
85
6
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
6
        return true;
90
6
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIlEENS_12NamePositiveELNS_13PrimitiveTypeE6EE11is_variadicEv
Line
Count
Source
85
10
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
10
        return true;
90
10
    }
_ZNK5doris23FunctionUnaryArithmeticINS_11RadiansImplIdEENS_11NameRadiansELNS_13PrimitiveTypeE9EE11is_variadicEv
Line
Count
Source
85
15
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
15
        return true;
90
15
    }
_ZNK5doris23FunctionUnaryArithmeticINS_11DegreesImplIdEENS_11NameDegreesELNS_13PrimitiveTypeE9EE11is_variadicEv
Line
Count
Source
85
19
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
19
        return true;
90
19
    }
_ZNK5doris23FunctionUnaryArithmeticINS_11SignBitImplIdEENS_11NameSignBitELNS_13PrimitiveTypeE9EE11is_variadicEv
Line
Count
Source
85
22
    bool is_variadic() const override {
86
22
        if constexpr (not_variadic) {
87
22
            return false;
88
22
        }
89
0
        return true;
90
22
    }
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIaEENS_10NameBitNotELNS_13PrimitiveTypeE3EE11is_variadicEv
Line
Count
Source
85
4
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
4
        return true;
90
4
    }
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIsEENS_10NameBitNotELNS_13PrimitiveTypeE4EE11is_variadicEv
Line
Count
Source
85
2
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
2
        return true;
90
2
    }
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIiEENS_10NameBitNotELNS_13PrimitiveTypeE5EE11is_variadicEv
Line
Count
Source
85
4
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
4
        return true;
90
4
    }
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIlEENS_10NameBitNotELNS_13PrimitiveTypeE6EE11is_variadicEv
Line
Count
Source
85
6
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
6
        return true;
90
6
    }
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplInEENS_10NameBitNotELNS_13PrimitiveTypeE7EE11is_variadicEv
Line
Count
Source
85
2
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
2
        return true;
90
2
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIaEENS_12NameBitCountELNS_13PrimitiveTypeE3EE11is_variadicEv
Line
Count
Source
85
9
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
9
        return true;
90
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIsEENS_12NameBitCountELNS_13PrimitiveTypeE4EE11is_variadicEv
Line
Count
Source
85
3
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
3
        return true;
90
3
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIiEENS_12NameBitCountELNS_13PrimitiveTypeE5EE11is_variadicEv
Line
Count
Source
85
4
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
4
        return true;
90
4
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIlEENS_12NameBitCountELNS_13PrimitiveTypeE6EE11is_variadicEv
Line
Count
Source
85
10
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
10
        return true;
90
10
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplInEENS_12NameBitCountELNS_13PrimitiveTypeE7EE11is_variadicEv
Line
Count
Source
85
2
    bool is_variadic() const override {
86
        if constexpr (not_variadic) {
87
            return false;
88
        }
89
2
        return true;
90
2
    }
91
92
369
    DataTypes get_variadic_argument_types_impl() const override {
93
369
        if constexpr (not_variadic) {
94
18
            return {};
95
18
        }
96
0
        return {std::make_shared<ResultDataType>()};
97
369
    }
_ZNK5doris23FunctionUnaryArithmeticINS_8SignImplIdEENS_8NameSignELNS_13PrimitiveTypeE9EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
9
        if constexpr (not_variadic) {
94
9
            return {};
95
9
        }
96
0
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIaEENS_7NameAbsELNS_13PrimitiveTypeE3EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIsEENS_7NameAbsELNS_13PrimitiveTypeE4EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIiEENS_7NameAbsELNS_13PrimitiveTypeE5EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIlEENS_7NameAbsELNS_13PrimitiveTypeE6EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplInEENS_7NameAbsELNS_13PrimitiveTypeE7EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIhEENS_7NameAbsELNS_13PrimitiveTypeE2EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIiEEEENS_7NameAbsELNS_13PrimitiveTypeE28EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIlEEEENS_7NameAbsELNS_13PrimitiveTypeE29EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_12Decimal128V3EEENS_7NameAbsELNS_13PrimitiveTypeE30EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_14DecimalV2ValueEEENS_7NameAbsELNS_13PrimitiveTypeE20EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_7NameAbsELNS_13PrimitiveTypeE35EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIfEENS_7NameAbsELNS_13PrimitiveTypeE8EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIdEENS_7NameAbsELNS_13PrimitiveTypeE9EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIdEENS_12NameNegativeELNS_13PrimitiveTypeE9EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIlEENS_12NameNegativeELNS_13PrimitiveTypeE6EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_14DecimalV2ValueEEENS_12NameNegativeELNS_13PrimitiveTypeE20EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NameNegativeELNS_13PrimitiveTypeE35EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_12Decimal128V3EEENS_12NameNegativeELNS_13PrimitiveTypeE30EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIiEEEENS_12NameNegativeELNS_13PrimitiveTypeE28EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIlEEEENS_12NameNegativeELNS_13PrimitiveTypeE29EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIiEEEENS_12NamePositiveELNS_13PrimitiveTypeE28EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIlEEEENS_12NamePositiveELNS_13PrimitiveTypeE29EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_12Decimal128V3EEENS_12NamePositiveELNS_13PrimitiveTypeE30EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_14DecimalV2ValueEEENS_12NamePositiveELNS_13PrimitiveTypeE20EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NamePositiveELNS_13PrimitiveTypeE35EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIdEENS_12NamePositiveELNS_13PrimitiveTypeE9EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIlEENS_12NamePositiveELNS_13PrimitiveTypeE6EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_11RadiansImplIdEENS_11NameRadiansELNS_13PrimitiveTypeE9EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_11DegreesImplIdEENS_11NameDegreesELNS_13PrimitiveTypeE9EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_11SignBitImplIdEENS_11NameSignBitELNS_13PrimitiveTypeE9EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
9
        if constexpr (not_variadic) {
94
9
            return {};
95
9
        }
96
0
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIaEENS_10NameBitNotELNS_13PrimitiveTypeE3EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIsEENS_10NameBitNotELNS_13PrimitiveTypeE4EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIiEENS_10NameBitNotELNS_13PrimitiveTypeE5EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIlEENS_10NameBitNotELNS_13PrimitiveTypeE6EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplInEENS_10NameBitNotELNS_13PrimitiveTypeE7EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIaEENS_12NameBitCountELNS_13PrimitiveTypeE3EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIsEENS_12NameBitCountELNS_13PrimitiveTypeE4EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIiEENS_12NameBitCountELNS_13PrimitiveTypeE5EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIlEENS_12NameBitCountELNS_13PrimitiveTypeE6EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplInEENS_12NameBitCountELNS_13PrimitiveTypeE7EE32get_variadic_argument_types_implEv
Line
Count
Source
92
9
    DataTypes get_variadic_argument_types_impl() const override {
93
        if constexpr (not_variadic) {
94
            return {};
95
        }
96
9
        return {std::make_shared<ResultDataType>()};
97
9
    }
98
99
762
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
762
        DataTypePtr result;
101
767
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
767
            using DataType = std::decay_t<decltype(type)>;
103
104
767
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
97
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
670
            } else {
108
670
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
670
            }
110
767
            return true;
111
767
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_8SignImplIdEENS_8NameSignELNS_13PrimitiveTypeE9EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_9EEEEEDaSH_
Line
Count
Source
101
24
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
24
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
24
            } else {
108
24
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
24
            }
110
24
            return true;
111
24
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIaEENS_7NameAbsELNS_13PrimitiveTypeE3EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_3EEEEEDaSH_
Line
Count
Source
101
46
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
46
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
46
            } else {
108
46
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
46
            }
110
46
            return true;
111
46
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIsEENS_7NameAbsELNS_13PrimitiveTypeE4EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_4EEEEEDaSH_
Line
Count
Source
101
27
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
27
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
27
            } else {
108
27
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
27
            }
110
27
            return true;
111
27
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIiEENS_7NameAbsELNS_13PrimitiveTypeE5EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_5EEEEEDaSH_
Line
Count
Source
101
227
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
227
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
227
            } else {
108
227
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
227
            }
110
227
            return true;
111
227
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIlEENS_7NameAbsELNS_13PrimitiveTypeE6EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_6EEEEEDaSH_
Line
Count
Source
101
159
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
159
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
159
            } else {
108
159
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
159
            }
110
159
            return true;
111
159
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplInEENS_7NameAbsELNS_13PrimitiveTypeE7EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_7EEEEEDaSH_
Line
Count
Source
101
8
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
8
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
8
            } else {
108
8
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
8
            }
110
8
            return true;
111
8
        });
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIhEENS_7NameAbsELNS_13PrimitiveTypeE2EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_2EEEEEDaSH_
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIiEEEENS_7NameAbsELNS_13PrimitiveTypeE28EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EEENKUlRKT_E_clINS_15DataTypeDecimalILS6_28EEEEEDaSJ_
Line
Count
Source
101
22
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
22
            using DataType = std::decay_t<decltype(type)>;
103
104
22
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
22
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
            } else {
108
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
            }
110
22
            return true;
111
22
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIlEEEENS_7NameAbsELNS_13PrimitiveTypeE29EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EEENKUlRKT_E_clINS_15DataTypeDecimalILS6_29EEEEEDaSJ_
Line
Count
Source
101
39
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
39
            using DataType = std::decay_t<decltype(type)>;
103
104
39
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
39
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
            } else {
108
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
            }
110
39
            return true;
111
39
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_12Decimal128V3EEENS_7NameAbsELNS_13PrimitiveTypeE30EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEENKUlRKT_E_clINS_15DataTypeDecimalILS5_30EEEEEDaSI_
Line
Count
Source
101
7
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
7
            using DataType = std::decay_t<decltype(type)>;
103
104
7
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
7
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
            } else {
108
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
            }
110
7
            return true;
111
7
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_14DecimalV2ValueEEENS_7NameAbsELNS_13PrimitiveTypeE20EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEENKUlRKT_E_clINS_15DataTypeDecimalILS5_20EEEEEDaSI_
Line
Count
Source
101
1
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
1
            using DataType = std::decay_t<decltype(type)>;
103
104
1
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
1
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
            } else {
108
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
            }
110
1
            return true;
111
1
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_7NameAbsELNS_13PrimitiveTypeE35EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISF_EEENKUlRKT_E_clINS_15DataTypeDecimalILS9_35EEEEEDaSM_
Line
Count
Source
101
10
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
10
            using DataType = std::decay_t<decltype(type)>;
103
104
10
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
10
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
            } else {
108
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
            }
110
10
            return true;
111
10
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIfEENS_7NameAbsELNS_13PrimitiveTypeE8EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_8EEEEEDaSH_
Line
Count
Source
101
15
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
15
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
15
            } else {
108
15
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
15
            }
110
15
            return true;
111
15
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIdEENS_7NameAbsELNS_13PrimitiveTypeE9EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_9EEEEEDaSH_
Line
Count
Source
101
46
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
46
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
46
            } else {
108
46
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
46
            }
110
46
            return true;
111
46
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIdEENS_12NameNegativeELNS_13PrimitiveTypeE9EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_9EEEEEDaSH_
Line
Count
Source
101
12
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
12
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
12
            } else {
108
12
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
12
            }
110
12
            return true;
111
12
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIlEENS_12NameNegativeELNS_13PrimitiveTypeE6EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_6EEEEEDaSH_
Line
Count
Source
101
18
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
18
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
18
            } else {
108
18
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
18
            }
110
18
            return true;
111
18
        });
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_14DecimalV2ValueEEENS_12NameNegativeELNS_13PrimitiveTypeE20EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEENKUlRKT_E_clINS_15DataTypeDecimalILS5_20EEEEEDaSI_
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NameNegativeELNS_13PrimitiveTypeE35EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISF_EEENKUlRKT_E_clINS_15DataTypeDecimalILS9_35EEEEEDaSM_
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_12Decimal128V3EEENS_12NameNegativeELNS_13PrimitiveTypeE30EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEENKUlRKT_E_clINS_15DataTypeDecimalILS5_30EEEEEDaSI_
_ZZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIiEEEENS_12NameNegativeELNS_13PrimitiveTypeE28EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EEENKUlRKT_E_clINS_15DataTypeDecimalILS6_28EEEEEDaSJ_
Line
Count
Source
101
6
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
6
            using DataType = std::decay_t<decltype(type)>;
103
104
6
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
6
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
            } else {
108
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
            }
110
6
            return true;
111
6
        });
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIlEEEENS_12NameNegativeELNS_13PrimitiveTypeE29EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EEENKUlRKT_E_clINS_15DataTypeDecimalILS6_29EEEEEDaSJ_
_ZZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIiEEEENS_12NamePositiveELNS_13PrimitiveTypeE28EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EEENKUlRKT_E_clINS_15DataTypeDecimalILS6_28EEEEEDaSJ_
Line
Count
Source
101
4
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
4
            using DataType = std::decay_t<decltype(type)>;
103
104
4
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
4
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
            } else {
108
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
            }
110
4
            return true;
111
4
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIlEEEENS_12NamePositiveELNS_13PrimitiveTypeE29EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EEENKUlRKT_E_clINS_15DataTypeDecimalILS6_29EEEEEDaSJ_
Line
Count
Source
101
6
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
6
            using DataType = std::decay_t<decltype(type)>;
103
104
6
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
6
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
            } else {
108
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
            }
110
6
            return true;
111
6
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_12Decimal128V3EEENS_12NamePositiveELNS_13PrimitiveTypeE30EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEENKUlRKT_E_clINS_15DataTypeDecimalILS5_30EEEEEDaSI_
Line
Count
Source
101
2
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
2
            using DataType = std::decay_t<decltype(type)>;
103
104
2
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
2
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
            } else {
108
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
            }
110
2
            return true;
111
2
        });
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_14DecimalV2ValueEEENS_12NamePositiveELNS_13PrimitiveTypeE20EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EEENKUlRKT_E_clINS_15DataTypeDecimalILS5_20EEEEEDaSI_
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NamePositiveELNS_13PrimitiveTypeE35EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISF_EEENKUlRKT_E_clINS_15DataTypeDecimalILS9_35EEEEEDaSM_
_ZZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIdEENS_12NamePositiveELNS_13PrimitiveTypeE9EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_9EEEEEDaSH_
Line
Count
Source
101
4
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
4
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
4
            } else {
108
4
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
4
            }
110
4
            return true;
111
4
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIlEENS_12NamePositiveELNS_13PrimitiveTypeE6EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_6EEEEEDaSH_
Line
Count
Source
101
8
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
8
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
8
            } else {
108
8
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
8
            }
110
8
            return true;
111
8
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_11RadiansImplIdEENS_11NameRadiansELNS_13PrimitiveTypeE9EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_9EEEEEDaSH_
Line
Count
Source
101
13
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
13
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
13
            } else {
108
13
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
13
            }
110
13
            return true;
111
13
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_11DegreesImplIdEENS_11NameDegreesELNS_13PrimitiveTypeE9EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_9EEEEEDaSH_
Line
Count
Source
101
17
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
17
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
17
            } else {
108
17
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
17
            }
110
17
            return true;
111
17
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_11SignBitImplIdEENS_11NameSignBitELNS_13PrimitiveTypeE9EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_9EEEEEDaSH_
Line
Count
Source
101
20
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
20
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
20
            } else {
108
20
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
20
            }
110
20
            return true;
111
20
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIaEENS_10NameBitNotELNS_13PrimitiveTypeE3EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_3EEEEEDaSH_
Line
Count
Source
101
2
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
2
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
2
            } else {
108
2
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
2
            }
110
2
            return true;
111
2
        });
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIsEENS_10NameBitNotELNS_13PrimitiveTypeE4EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_4EEEEEDaSH_
_ZZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIiEENS_10NameBitNotELNS_13PrimitiveTypeE5EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_5EEEEEDaSH_
Line
Count
Source
101
2
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
2
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
2
            } else {
108
2
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
2
            }
110
2
            return true;
111
2
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIlEENS_10NameBitNotELNS_13PrimitiveTypeE6EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_6EEEEEDaSH_
Line
Count
Source
101
4
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
4
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
4
            } else {
108
4
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
4
            }
110
4
            return true;
111
4
        });
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplInEENS_10NameBitNotELNS_13PrimitiveTypeE7EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_7EEEEEDaSH_
_ZZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIaEENS_12NameBitCountELNS_13PrimitiveTypeE3EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_3EEEEEDaSH_
Line
Count
Source
101
7
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
7
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
7
            } else {
108
7
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
7
            }
110
7
            return true;
111
7
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIsEENS_12NameBitCountELNS_13PrimitiveTypeE4EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_4EEEEEDaSH_
Line
Count
Source
101
1
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
1
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
1
            } else {
108
1
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
1
            }
110
1
            return true;
111
1
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIiEENS_12NameBitCountELNS_13PrimitiveTypeE5EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_5EEEEEDaSH_
Line
Count
Source
101
2
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
2
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
2
            } else {
108
2
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
2
            }
110
2
            return true;
111
2
        });
_ZZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIlEENS_12NameBitCountELNS_13PrimitiveTypeE6EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_6EEEEEDaSH_
Line
Count
Source
101
8
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
8
            using DataType = std::decay_t<decltype(type)>;
103
104
            if constexpr (IsDataTypeDecimal<DataType>) {
105
                if constexpr (!allow_decimal) return false;
106
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
8
            } else {
108
8
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
8
            }
110
8
            return true;
111
8
        });
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplInEENS_12NameBitCountELNS_13PrimitiveTypeE7EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EEENKUlRKT_E_clINS_14DataTypeNumberILS4_7EEEEEDaSH_
112
762
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
762
        return result;
118
762
    }
_ZNK5doris23FunctionUnaryArithmeticINS_8SignImplIdEENS_8NameSignELNS_13PrimitiveTypeE9EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
24
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
24
        DataTypePtr result;
101
24
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
24
            using DataType = std::decay_t<decltype(type)>;
103
104
24
            if constexpr (IsDataTypeDecimal<DataType>) {
105
24
                if constexpr (!allow_decimal) return false;
106
24
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
24
            } else {
108
24
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
24
            }
110
24
            return true;
111
24
        });
112
24
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
24
        return result;
118
24
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIaEENS_7NameAbsELNS_13PrimitiveTypeE3EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
46
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
46
        DataTypePtr result;
101
46
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
46
            using DataType = std::decay_t<decltype(type)>;
103
104
46
            if constexpr (IsDataTypeDecimal<DataType>) {
105
46
                if constexpr (!allow_decimal) return false;
106
46
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
46
            } else {
108
46
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
46
            }
110
46
            return true;
111
46
        });
112
46
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
46
        return result;
118
46
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIsEENS_7NameAbsELNS_13PrimitiveTypeE4EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
26
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
26
        DataTypePtr result;
101
26
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
26
            using DataType = std::decay_t<decltype(type)>;
103
104
26
            if constexpr (IsDataTypeDecimal<DataType>) {
105
26
                if constexpr (!allow_decimal) return false;
106
26
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
26
            } else {
108
26
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
26
            }
110
26
            return true;
111
26
        });
112
26
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
26
        return result;
118
26
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIiEENS_7NameAbsELNS_13PrimitiveTypeE5EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
227
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
227
        DataTypePtr result;
101
227
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
227
            using DataType = std::decay_t<decltype(type)>;
103
104
227
            if constexpr (IsDataTypeDecimal<DataType>) {
105
227
                if constexpr (!allow_decimal) return false;
106
227
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
227
            } else {
108
227
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
227
            }
110
227
            return true;
111
227
        });
112
227
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
227
        return result;
118
227
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIlEENS_7NameAbsELNS_13PrimitiveTypeE6EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
159
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
159
        DataTypePtr result;
101
159
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
159
            using DataType = std::decay_t<decltype(type)>;
103
104
159
            if constexpr (IsDataTypeDecimal<DataType>) {
105
159
                if constexpr (!allow_decimal) return false;
106
159
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
159
            } else {
108
159
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
159
            }
110
159
            return true;
111
159
        });
112
159
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
159
        return result;
118
159
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplInEENS_7NameAbsELNS_13PrimitiveTypeE7EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
8
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
8
        DataTypePtr result;
101
8
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
8
            using DataType = std::decay_t<decltype(type)>;
103
104
8
            if constexpr (IsDataTypeDecimal<DataType>) {
105
8
                if constexpr (!allow_decimal) return false;
106
8
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
8
            } else {
108
8
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
8
            }
110
8
            return true;
111
8
        });
112
8
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
8
        return result;
118
8
    }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIhEENS_7NameAbsELNS_13PrimitiveTypeE2EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIiEEEENS_7NameAbsELNS_13PrimitiveTypeE28EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EE
Line
Count
Source
99
21
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
21
        DataTypePtr result;
101
21
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
21
            using DataType = std::decay_t<decltype(type)>;
103
104
21
            if constexpr (IsDataTypeDecimal<DataType>) {
105
21
                if constexpr (!allow_decimal) return false;
106
21
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
21
            } else {
108
21
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
21
            }
110
21
            return true;
111
21
        });
112
21
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
21
        return result;
118
21
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIlEEEENS_7NameAbsELNS_13PrimitiveTypeE29EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EE
Line
Count
Source
99
38
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
38
        DataTypePtr result;
101
38
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
38
            using DataType = std::decay_t<decltype(type)>;
103
104
38
            if constexpr (IsDataTypeDecimal<DataType>) {
105
38
                if constexpr (!allow_decimal) return false;
106
38
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
38
            } else {
108
38
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
38
            }
110
38
            return true;
111
38
        });
112
38
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
38
        return result;
118
38
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_12Decimal128V3EEENS_7NameAbsELNS_13PrimitiveTypeE30EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EE
Line
Count
Source
99
6
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
6
        DataTypePtr result;
101
6
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
6
            using DataType = std::decay_t<decltype(type)>;
103
104
6
            if constexpr (IsDataTypeDecimal<DataType>) {
105
6
                if constexpr (!allow_decimal) return false;
106
6
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
6
            } else {
108
6
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
6
            }
110
6
            return true;
111
6
        });
112
6
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
6
        return result;
118
6
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_14DecimalV2ValueEEENS_7NameAbsELNS_13PrimitiveTypeE20EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EE
Line
Count
Source
99
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
1
        DataTypePtr result;
101
1
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
1
            using DataType = std::decay_t<decltype(type)>;
103
104
1
            if constexpr (IsDataTypeDecimal<DataType>) {
105
1
                if constexpr (!allow_decimal) return false;
106
1
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
1
            } else {
108
1
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
1
            }
110
1
            return true;
111
1
        });
112
1
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
1
        return result;
118
1
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_7NameAbsELNS_13PrimitiveTypeE35EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISF_EE
Line
Count
Source
99
9
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
9
        DataTypePtr result;
101
9
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
9
            using DataType = std::decay_t<decltype(type)>;
103
104
9
            if constexpr (IsDataTypeDecimal<DataType>) {
105
9
                if constexpr (!allow_decimal) return false;
106
9
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
9
            } else {
108
9
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
9
            }
110
9
            return true;
111
9
        });
112
9
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
9
        return result;
118
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIfEENS_7NameAbsELNS_13PrimitiveTypeE8EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
15
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
15
        DataTypePtr result;
101
15
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
15
            using DataType = std::decay_t<decltype(type)>;
103
104
15
            if constexpr (IsDataTypeDecimal<DataType>) {
105
15
                if constexpr (!allow_decimal) return false;
106
15
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
15
            } else {
108
15
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
15
            }
110
15
            return true;
111
15
        });
112
15
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
15
        return result;
118
15
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIdEENS_7NameAbsELNS_13PrimitiveTypeE9EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
46
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
46
        DataTypePtr result;
101
46
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
46
            using DataType = std::decay_t<decltype(type)>;
103
104
46
            if constexpr (IsDataTypeDecimal<DataType>) {
105
46
                if constexpr (!allow_decimal) return false;
106
46
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
46
            } else {
108
46
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
46
            }
110
46
            return true;
111
46
        });
112
46
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
46
        return result;
118
46
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIdEENS_12NameNegativeELNS_13PrimitiveTypeE9EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
12
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
12
        DataTypePtr result;
101
12
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
12
            using DataType = std::decay_t<decltype(type)>;
103
104
12
            if constexpr (IsDataTypeDecimal<DataType>) {
105
12
                if constexpr (!allow_decimal) return false;
106
12
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
12
            } else {
108
12
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
12
            }
110
12
            return true;
111
12
        });
112
12
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
12
        return result;
118
12
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIlEENS_12NameNegativeELNS_13PrimitiveTypeE6EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
18
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
18
        DataTypePtr result;
101
18
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
18
            using DataType = std::decay_t<decltype(type)>;
103
104
18
            if constexpr (IsDataTypeDecimal<DataType>) {
105
18
                if constexpr (!allow_decimal) return false;
106
18
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
18
            } else {
108
18
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
18
            }
110
18
            return true;
111
18
        });
112
18
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
18
        return result;
118
18
    }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_14DecimalV2ValueEEENS_12NameNegativeELNS_13PrimitiveTypeE20EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EE
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NameNegativeELNS_13PrimitiveTypeE35EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISF_EE
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_12Decimal128V3EEENS_12NameNegativeELNS_13PrimitiveTypeE30EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EE
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIiEEEENS_12NameNegativeELNS_13PrimitiveTypeE28EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EE
Line
Count
Source
99
6
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
6
        DataTypePtr result;
101
6
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
6
            using DataType = std::decay_t<decltype(type)>;
103
104
6
            if constexpr (IsDataTypeDecimal<DataType>) {
105
6
                if constexpr (!allow_decimal) return false;
106
6
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
6
            } else {
108
6
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
6
            }
110
6
            return true;
111
6
        });
112
6
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
6
        return result;
118
6
    }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIlEEEENS_12NameNegativeELNS_13PrimitiveTypeE29EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EE
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIiEEEENS_12NamePositiveELNS_13PrimitiveTypeE28EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EE
Line
Count
Source
99
4
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
4
        DataTypePtr result;
101
4
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
4
            using DataType = std::decay_t<decltype(type)>;
103
104
4
            if constexpr (IsDataTypeDecimal<DataType>) {
105
4
                if constexpr (!allow_decimal) return false;
106
4
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
4
            } else {
108
4
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
4
            }
110
4
            return true;
111
4
        });
112
4
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
4
        return result;
118
4
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIlEEEENS_12NamePositiveELNS_13PrimitiveTypeE29EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EE
Line
Count
Source
99
6
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
6
        DataTypePtr result;
101
6
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
6
            using DataType = std::decay_t<decltype(type)>;
103
104
6
            if constexpr (IsDataTypeDecimal<DataType>) {
105
6
                if constexpr (!allow_decimal) return false;
106
6
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
6
            } else {
108
6
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
6
            }
110
6
            return true;
111
6
        });
112
6
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
6
        return result;
118
6
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_12Decimal128V3EEENS_12NamePositiveELNS_13PrimitiveTypeE30EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EE
Line
Count
Source
99
2
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
2
        DataTypePtr result;
101
2
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
2
            using DataType = std::decay_t<decltype(type)>;
103
104
2
            if constexpr (IsDataTypeDecimal<DataType>) {
105
2
                if constexpr (!allow_decimal) return false;
106
2
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
2
            } else {
108
2
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
2
            }
110
2
            return true;
111
2
        });
112
2
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
2
        return result;
118
2
    }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_14DecimalV2ValueEEENS_12NamePositiveELNS_13PrimitiveTypeE20EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISB_EE
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NamePositiveELNS_13PrimitiveTypeE35EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISF_EE
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIdEENS_12NamePositiveELNS_13PrimitiveTypeE9EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
4
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
4
        DataTypePtr result;
101
4
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
4
            using DataType = std::decay_t<decltype(type)>;
103
104
4
            if constexpr (IsDataTypeDecimal<DataType>) {
105
4
                if constexpr (!allow_decimal) return false;
106
4
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
4
            } else {
108
4
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
4
            }
110
4
            return true;
111
4
        });
112
4
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
4
        return result;
118
4
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIlEENS_12NamePositiveELNS_13PrimitiveTypeE6EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
8
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
8
        DataTypePtr result;
101
8
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
8
            using DataType = std::decay_t<decltype(type)>;
103
104
8
            if constexpr (IsDataTypeDecimal<DataType>) {
105
8
                if constexpr (!allow_decimal) return false;
106
8
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
8
            } else {
108
8
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
8
            }
110
8
            return true;
111
8
        });
112
8
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
8
        return result;
118
8
    }
_ZNK5doris23FunctionUnaryArithmeticINS_11RadiansImplIdEENS_11NameRadiansELNS_13PrimitiveTypeE9EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
13
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
13
        DataTypePtr result;
101
13
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
13
            using DataType = std::decay_t<decltype(type)>;
103
104
13
            if constexpr (IsDataTypeDecimal<DataType>) {
105
13
                if constexpr (!allow_decimal) return false;
106
13
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
13
            } else {
108
13
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
13
            }
110
13
            return true;
111
13
        });
112
13
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
13
        return result;
118
13
    }
_ZNK5doris23FunctionUnaryArithmeticINS_11DegreesImplIdEENS_11NameDegreesELNS_13PrimitiveTypeE9EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
17
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
17
        DataTypePtr result;
101
17
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
17
            using DataType = std::decay_t<decltype(type)>;
103
104
17
            if constexpr (IsDataTypeDecimal<DataType>) {
105
17
                if constexpr (!allow_decimal) return false;
106
17
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
17
            } else {
108
17
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
17
            }
110
17
            return true;
111
17
        });
112
17
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
17
        return result;
118
17
    }
_ZNK5doris23FunctionUnaryArithmeticINS_11SignBitImplIdEENS_11NameSignBitELNS_13PrimitiveTypeE9EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
20
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
20
        DataTypePtr result;
101
20
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
20
            using DataType = std::decay_t<decltype(type)>;
103
104
20
            if constexpr (IsDataTypeDecimal<DataType>) {
105
20
                if constexpr (!allow_decimal) return false;
106
20
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
20
            } else {
108
20
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
20
            }
110
20
            return true;
111
20
        });
112
20
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
20
        return result;
118
20
    }
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIaEENS_10NameBitNotELNS_13PrimitiveTypeE3EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
2
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
2
        DataTypePtr result;
101
2
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
2
            using DataType = std::decay_t<decltype(type)>;
103
104
2
            if constexpr (IsDataTypeDecimal<DataType>) {
105
2
                if constexpr (!allow_decimal) return false;
106
2
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
2
            } else {
108
2
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
2
            }
110
2
            return true;
111
2
        });
112
2
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
2
        return result;
118
2
    }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIsEENS_10NameBitNotELNS_13PrimitiveTypeE4EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIiEENS_10NameBitNotELNS_13PrimitiveTypeE5EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
2
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
2
        DataTypePtr result;
101
2
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
2
            using DataType = std::decay_t<decltype(type)>;
103
104
2
            if constexpr (IsDataTypeDecimal<DataType>) {
105
2
                if constexpr (!allow_decimal) return false;
106
2
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
2
            } else {
108
2
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
2
            }
110
2
            return true;
111
2
        });
112
2
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
2
        return result;
118
2
    }
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIlEENS_10NameBitNotELNS_13PrimitiveTypeE6EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
4
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
4
        DataTypePtr result;
101
4
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
4
            using DataType = std::decay_t<decltype(type)>;
103
104
4
            if constexpr (IsDataTypeDecimal<DataType>) {
105
4
                if constexpr (!allow_decimal) return false;
106
4
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
4
            } else {
108
4
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
4
            }
110
4
            return true;
111
4
        });
112
4
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
4
        return result;
118
4
    }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplInEENS_10NameBitNotELNS_13PrimitiveTypeE7EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIaEENS_12NameBitCountELNS_13PrimitiveTypeE3EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
7
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
7
        DataTypePtr result;
101
7
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
7
            using DataType = std::decay_t<decltype(type)>;
103
104
7
            if constexpr (IsDataTypeDecimal<DataType>) {
105
7
                if constexpr (!allow_decimal) return false;
106
7
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
7
            } else {
108
7
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
7
            }
110
7
            return true;
111
7
        });
112
7
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
7
        return result;
118
7
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIsEENS_12NameBitCountELNS_13PrimitiveTypeE4EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
1
        DataTypePtr result;
101
1
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
1
            using DataType = std::decay_t<decltype(type)>;
103
104
1
            if constexpr (IsDataTypeDecimal<DataType>) {
105
1
                if constexpr (!allow_decimal) return false;
106
1
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
1
            } else {
108
1
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
1
            }
110
1
            return true;
111
1
        });
112
1
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
1
        return result;
118
1
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIiEENS_12NameBitCountELNS_13PrimitiveTypeE5EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
2
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
2
        DataTypePtr result;
101
2
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
2
            using DataType = std::decay_t<decltype(type)>;
103
104
2
            if constexpr (IsDataTypeDecimal<DataType>) {
105
2
                if constexpr (!allow_decimal) return false;
106
2
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
2
            } else {
108
2
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
2
            }
110
2
            return true;
111
2
        });
112
2
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
2
        return result;
118
2
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIlEENS_12NameBitCountELNS_13PrimitiveTypeE6EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
Line
Count
Source
99
8
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
100
8
        DataTypePtr result;
101
8
        bool valid = cast_type(arguments[0].get(), [&](const auto& type) {
102
8
            using DataType = std::decay_t<decltype(type)>;
103
104
8
            if constexpr (IsDataTypeDecimal<DataType>) {
105
8
                if constexpr (!allow_decimal) return false;
106
8
                result = std::make_shared<DataType>(type.get_precision(), type.get_scale());
107
8
            } else {
108
8
                result = std::make_shared<typename PrimitiveTypeTraits<Op::ResultType>::DataType>();
109
8
            }
110
8
            return true;
111
8
        });
112
8
        if (!valid) {
113
0
            throw doris::Exception(ErrorCode::INVALID_ARGUMENT,
114
0
                                   "Illegal type {} of argument of function {}",
115
0
                                   arguments[0]->get_name(), get_name());
116
0
        }
117
8
        return result;
118
8
    }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplInEENS_12NameBitCountELNS_13PrimitiveTypeE7EE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE
119
120
    Status execute_impl(FunctionContext* context, Block& block, const ColumnNumbers& arguments,
121
1.23k
                        uint32_t result, size_t input_rows_count) const override {
122
1.23k
        bool valid =
123
1.23k
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
1.23k
                    using DataType = std::decay_t<decltype(type)>;
125
126
1.23k
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
154
                        if constexpr (allow_decimal) {
128
154
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
154
                                        block.get_by_position(arguments[0]).column.get())) {
130
154
                                auto col_res =
131
154
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
154
                                                0, type.get_scale());
133
154
                                auto& vec_res = col_res->get_data();
134
154
                                vec_res.resize(col->get_data().size());
135
154
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
154
                                                                                vec_res);
137
154
                                block.replace_by_position(result, std::move(col_res));
138
154
                                return true;
139
154
                            }
140
154
                        }
141
1.08k
                    } else {
142
1.08k
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
1.08k
                                    block.get_by_position(arguments[0]).column.get())) {
144
1.08k
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
24
                                block.replace_by_position(
147
24
                                        result, block.get_by_position(arguments[0]).column);
148
1.06k
                            } else {
149
1.06k
                                auto col_res =
150
1.06k
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
1.06k
                                auto& vec_res = col_res->get_data();
152
1.06k
                                vec_res.resize(col->get_data().size());
153
1.06k
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
1.06k
                                                                                vec_res);
155
1.06k
                                block.replace_by_position(result, std::move(col_res));
156
1.06k
                            }
157
1.08k
                            return true;
158
1.08k
                        }
159
1.08k
                    }
160
161
18.4E
                    return false;
162
1.23k
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_8SignImplIdEENS_8NameSignELNS_13PrimitiveTypeE9EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_9EEEEEDaSH_
Line
Count
Source
123
70
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
70
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
70
                    } else {
142
70
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
70
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
70
                            } else {
149
70
                                auto col_res =
150
70
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
70
                                auto& vec_res = col_res->get_data();
152
70
                                vec_res.resize(col->get_data().size());
153
70
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
70
                                                                                vec_res);
155
70
                                block.replace_by_position(result, std::move(col_res));
156
70
                            }
157
70
                            return true;
158
70
                        }
159
70
                    }
160
161
0
                    return false;
162
70
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIaEENS_7NameAbsELNS_13PrimitiveTypeE3EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_3EEEEEDaSH_
Line
Count
Source
123
72
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
72
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
72
                    } else {
142
72
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
72
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
72
                            } else {
149
72
                                auto col_res =
150
72
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
72
                                auto& vec_res = col_res->get_data();
152
72
                                vec_res.resize(col->get_data().size());
153
72
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
72
                                                                                vec_res);
155
72
                                block.replace_by_position(result, std::move(col_res));
156
72
                            }
157
72
                            return true;
158
72
                        }
159
72
                    }
160
161
0
                    return false;
162
72
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIsEENS_7NameAbsELNS_13PrimitiveTypeE4EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_4EEEEEDaSH_
Line
Count
Source
123
65
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
65
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
65
                    } else {
142
65
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
65
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
65
                            } else {
149
65
                                auto col_res =
150
65
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
65
                                auto& vec_res = col_res->get_data();
152
65
                                vec_res.resize(col->get_data().size());
153
65
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
65
                                                                                vec_res);
155
65
                                block.replace_by_position(result, std::move(col_res));
156
65
                            }
157
65
                            return true;
158
65
                        }
159
65
                    }
160
161
0
                    return false;
162
65
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIiEENS_7NameAbsELNS_13PrimitiveTypeE5EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_5EEEEEDaSH_
Line
Count
Source
123
364
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
364
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
364
                    } else {
142
364
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
366
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
366
                            } else {
149
366
                                auto col_res =
150
366
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
366
                                auto& vec_res = col_res->get_data();
152
366
                                vec_res.resize(col->get_data().size());
153
366
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
366
                                                                                vec_res);
155
366
                                block.replace_by_position(result, std::move(col_res));
156
366
                            }
157
366
                            return true;
158
366
                        }
159
364
                    }
160
161
18.4E
                    return false;
162
364
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIlEENS_7NameAbsELNS_13PrimitiveTypeE6EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_6EEEEEDaSH_
Line
Count
Source
123
217
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
217
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
217
                    } else {
142
217
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
218
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
218
                            } else {
149
218
                                auto col_res =
150
218
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
218
                                auto& vec_res = col_res->get_data();
152
218
                                vec_res.resize(col->get_data().size());
153
218
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
218
                                                                                vec_res);
155
218
                                block.replace_by_position(result, std::move(col_res));
156
218
                            }
157
218
                            return true;
158
218
                        }
159
217
                    }
160
161
18.4E
                    return false;
162
217
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplInEENS_7NameAbsELNS_13PrimitiveTypeE7EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_7EEEEEDaSH_
Line
Count
Source
123
16
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
16
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
16
                    } else {
142
16
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
16
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
16
                            } else {
149
16
                                auto col_res =
150
16
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
16
                                auto& vec_res = col_res->get_data();
152
16
                                vec_res.resize(col->get_data().size());
153
16
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
16
                                                                                vec_res);
155
16
                                block.replace_by_position(result, std::move(col_res));
156
16
                            }
157
16
                            return true;
158
16
                        }
159
16
                    }
160
161
0
                    return false;
162
16
                });
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIhEENS_7NameAbsELNS_13PrimitiveTypeE2EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_2EEEEEDaSH_
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIiEEEENS_7NameAbsELNS_13PrimitiveTypeE28EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS6_28EEEEEDaSJ_
Line
Count
Source
123
42
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
42
                    using DataType = std::decay_t<decltype(type)>;
125
126
42
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
42
                        if constexpr (allow_decimal) {
128
42
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
42
                                        block.get_by_position(arguments[0]).column.get())) {
130
42
                                auto col_res =
131
42
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
42
                                                0, type.get_scale());
133
42
                                auto& vec_res = col_res->get_data();
134
42
                                vec_res.resize(col->get_data().size());
135
42
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
42
                                                                                vec_res);
137
42
                                block.replace_by_position(result, std::move(col_res));
138
42
                                return true;
139
42
                            }
140
42
                        }
141
                    } else {
142
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
                            } else {
149
                                auto col_res =
150
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
                                auto& vec_res = col_res->get_data();
152
                                vec_res.resize(col->get_data().size());
153
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
                                                                                vec_res);
155
                                block.replace_by_position(result, std::move(col_res));
156
                            }
157
                            return true;
158
                        }
159
                    }
160
161
0
                    return false;
162
42
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIlEEEENS_7NameAbsELNS_13PrimitiveTypeE29EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS6_29EEEEEDaSJ_
Line
Count
Source
123
48
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
48
                    using DataType = std::decay_t<decltype(type)>;
125
126
48
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
48
                        if constexpr (allow_decimal) {
128
48
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
48
                                        block.get_by_position(arguments[0]).column.get())) {
130
48
                                auto col_res =
131
48
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
48
                                                0, type.get_scale());
133
48
                                auto& vec_res = col_res->get_data();
134
48
                                vec_res.resize(col->get_data().size());
135
48
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
48
                                                                                vec_res);
137
48
                                block.replace_by_position(result, std::move(col_res));
138
48
                                return true;
139
48
                            }
140
48
                        }
141
                    } else {
142
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
                            } else {
149
                                auto col_res =
150
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
                                auto& vec_res = col_res->get_data();
152
                                vec_res.resize(col->get_data().size());
153
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
                                                                                vec_res);
155
                                block.replace_by_position(result, std::move(col_res));
156
                            }
157
                            return true;
158
                        }
159
                    }
160
161
0
                    return false;
162
48
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_12Decimal128V3EEENS_7NameAbsELNS_13PrimitiveTypeE30EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS5_30EEEEEDaSI_
Line
Count
Source
123
9
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
9
                    using DataType = std::decay_t<decltype(type)>;
125
126
9
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
9
                        if constexpr (allow_decimal) {
128
9
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
9
                                        block.get_by_position(arguments[0]).column.get())) {
130
9
                                auto col_res =
131
9
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
9
                                                0, type.get_scale());
133
9
                                auto& vec_res = col_res->get_data();
134
9
                                vec_res.resize(col->get_data().size());
135
9
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
9
                                                                                vec_res);
137
9
                                block.replace_by_position(result, std::move(col_res));
138
9
                                return true;
139
9
                            }
140
9
                        }
141
                    } else {
142
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
                            } else {
149
                                auto col_res =
150
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
                                auto& vec_res = col_res->get_data();
152
                                vec_res.resize(col->get_data().size());
153
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
                                                                                vec_res);
155
                                block.replace_by_position(result, std::move(col_res));
156
                            }
157
                            return true;
158
                        }
159
                    }
160
161
0
                    return false;
162
9
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_14DecimalV2ValueEEENS_7NameAbsELNS_13PrimitiveTypeE20EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS5_20EEEEEDaSI_
Line
Count
Source
123
6
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
6
                    using DataType = std::decay_t<decltype(type)>;
125
126
6
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
6
                        if constexpr (allow_decimal) {
128
6
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
6
                                        block.get_by_position(arguments[0]).column.get())) {
130
6
                                auto col_res =
131
6
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
6
                                                0, type.get_scale());
133
6
                                auto& vec_res = col_res->get_data();
134
6
                                vec_res.resize(col->get_data().size());
135
6
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
6
                                                                                vec_res);
137
6
                                block.replace_by_position(result, std::move(col_res));
138
6
                                return true;
139
6
                            }
140
6
                        }
141
                    } else {
142
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
                            } else {
149
                                auto col_res =
150
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
                                auto& vec_res = col_res->get_data();
152
                                vec_res.resize(col->get_data().size());
153
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
                                                                                vec_res);
155
                                block.replace_by_position(result, std::move(col_res));
156
                            }
157
                            return true;
158
                        }
159
                    }
160
161
0
                    return false;
162
6
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_7NameAbsELNS_13PrimitiveTypeE35EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS9_35EEEEEDaSM_
Line
Count
Source
123
6
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
6
                    using DataType = std::decay_t<decltype(type)>;
125
126
6
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
6
                        if constexpr (allow_decimal) {
128
6
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
6
                                        block.get_by_position(arguments[0]).column.get())) {
130
6
                                auto col_res =
131
6
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
6
                                                0, type.get_scale());
133
6
                                auto& vec_res = col_res->get_data();
134
6
                                vec_res.resize(col->get_data().size());
135
6
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
6
                                                                                vec_res);
137
6
                                block.replace_by_position(result, std::move(col_res));
138
6
                                return true;
139
6
                            }
140
6
                        }
141
                    } else {
142
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
                            } else {
149
                                auto col_res =
150
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
                                auto& vec_res = col_res->get_data();
152
                                vec_res.resize(col->get_data().size());
153
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
                                                                                vec_res);
155
                                block.replace_by_position(result, std::move(col_res));
156
                            }
157
                            return true;
158
                        }
159
                    }
160
161
0
                    return false;
162
6
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIfEENS_7NameAbsELNS_13PrimitiveTypeE8EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_8EEEEEDaSH_
Line
Count
Source
123
33
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
33
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
33
                    } else {
142
33
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
33
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
33
                            } else {
149
33
                                auto col_res =
150
33
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
33
                                auto& vec_res = col_res->get_data();
152
33
                                vec_res.resize(col->get_data().size());
153
33
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
33
                                                                                vec_res);
155
33
                                block.replace_by_position(result, std::move(col_res));
156
33
                            }
157
33
                            return true;
158
33
                        }
159
33
                    }
160
161
0
                    return false;
162
33
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIdEENS_7NameAbsELNS_13PrimitiveTypeE9EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_9EEEEEDaSH_
Line
Count
Source
123
94
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
94
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
94
                    } else {
142
94
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
94
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
94
                            } else {
149
94
                                auto col_res =
150
94
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
94
                                auto& vec_res = col_res->get_data();
152
94
                                vec_res.resize(col->get_data().size());
153
94
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
94
                                                                                vec_res);
155
94
                                block.replace_by_position(result, std::move(col_res));
156
94
                            }
157
94
                            return true;
158
94
                        }
159
94
                    }
160
161
0
                    return false;
162
94
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIdEENS_12NameNegativeELNS_13PrimitiveTypeE9EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_9EEEEEDaSH_
Line
Count
Source
123
18
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
18
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
18
                    } else {
142
18
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
18
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
18
                            } else {
149
18
                                auto col_res =
150
18
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
18
                                auto& vec_res = col_res->get_data();
152
18
                                vec_res.resize(col->get_data().size());
153
18
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
18
                                                                                vec_res);
155
18
                                block.replace_by_position(result, std::move(col_res));
156
18
                            }
157
18
                            return true;
158
18
                        }
159
18
                    }
160
161
0
                    return false;
162
18
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIlEENS_12NameNegativeELNS_13PrimitiveTypeE6EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_6EEEEEDaSH_
Line
Count
Source
123
22
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
22
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
22
                    } else {
142
22
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
22
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
22
                            } else {
149
22
                                auto col_res =
150
22
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
22
                                auto& vec_res = col_res->get_data();
152
22
                                vec_res.resize(col->get_data().size());
153
22
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
22
                                                                                vec_res);
155
22
                                block.replace_by_position(result, std::move(col_res));
156
22
                            }
157
22
                            return true;
158
22
                        }
159
22
                    }
160
161
0
                    return false;
162
22
                });
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_14DecimalV2ValueEEENS_12NameNegativeELNS_13PrimitiveTypeE20EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS5_20EEEEEDaSI_
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NameNegativeELNS_13PrimitiveTypeE35EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS9_35EEEEEDaSM_
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_12Decimal128V3EEENS_12NameNegativeELNS_13PrimitiveTypeE30EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS5_30EEEEEDaSI_
_ZZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIiEEEENS_12NameNegativeELNS_13PrimitiveTypeE28EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS6_28EEEEEDaSJ_
Line
Count
Source
123
12
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
12
                    using DataType = std::decay_t<decltype(type)>;
125
126
12
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
12
                        if constexpr (allow_decimal) {
128
12
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
12
                                        block.get_by_position(arguments[0]).column.get())) {
130
12
                                auto col_res =
131
12
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
12
                                                0, type.get_scale());
133
12
                                auto& vec_res = col_res->get_data();
134
12
                                vec_res.resize(col->get_data().size());
135
12
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
12
                                                                                vec_res);
137
12
                                block.replace_by_position(result, std::move(col_res));
138
12
                                return true;
139
12
                            }
140
12
                        }
141
                    } else {
142
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
                            } else {
149
                                auto col_res =
150
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
                                auto& vec_res = col_res->get_data();
152
                                vec_res.resize(col->get_data().size());
153
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
                                                                                vec_res);
155
                                block.replace_by_position(result, std::move(col_res));
156
                            }
157
                            return true;
158
                        }
159
                    }
160
161
0
                    return false;
162
12
                });
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIlEEEENS_12NameNegativeELNS_13PrimitiveTypeE29EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS6_29EEEEEDaSJ_
_ZZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIiEEEENS_12NamePositiveELNS_13PrimitiveTypeE28EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS6_28EEEEEDaSJ_
Line
Count
Source
123
10
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
10
                    using DataType = std::decay_t<decltype(type)>;
125
126
10
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
10
                        if constexpr (allow_decimal) {
128
10
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
10
                                        block.get_by_position(arguments[0]).column.get())) {
130
10
                                auto col_res =
131
10
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
10
                                                0, type.get_scale());
133
10
                                auto& vec_res = col_res->get_data();
134
10
                                vec_res.resize(col->get_data().size());
135
10
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
10
                                                                                vec_res);
137
10
                                block.replace_by_position(result, std::move(col_res));
138
10
                                return true;
139
10
                            }
140
10
                        }
141
                    } else {
142
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
                            } else {
149
                                auto col_res =
150
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
                                auto& vec_res = col_res->get_data();
152
                                vec_res.resize(col->get_data().size());
153
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
                                                                                vec_res);
155
                                block.replace_by_position(result, std::move(col_res));
156
                            }
157
                            return true;
158
                        }
159
                    }
160
161
0
                    return false;
162
10
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIlEEEENS_12NamePositiveELNS_13PrimitiveTypeE29EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS6_29EEEEEDaSJ_
Line
Count
Source
123
6
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
6
                    using DataType = std::decay_t<decltype(type)>;
125
126
6
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
6
                        if constexpr (allow_decimal) {
128
6
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
6
                                        block.get_by_position(arguments[0]).column.get())) {
130
6
                                auto col_res =
131
6
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
6
                                                0, type.get_scale());
133
6
                                auto& vec_res = col_res->get_data();
134
6
                                vec_res.resize(col->get_data().size());
135
6
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
6
                                                                                vec_res);
137
6
                                block.replace_by_position(result, std::move(col_res));
138
6
                                return true;
139
6
                            }
140
6
                        }
141
                    } else {
142
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
                            } else {
149
                                auto col_res =
150
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
                                auto& vec_res = col_res->get_data();
152
                                vec_res.resize(col->get_data().size());
153
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
                                                                                vec_res);
155
                                block.replace_by_position(result, std::move(col_res));
156
                            }
157
                            return true;
158
                        }
159
                    }
160
161
0
                    return false;
162
6
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_12Decimal128V3EEENS_12NamePositiveELNS_13PrimitiveTypeE30EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS5_30EEEEEDaSI_
Line
Count
Source
123
15
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
15
                    using DataType = std::decay_t<decltype(type)>;
125
126
15
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
15
                        if constexpr (allow_decimal) {
128
15
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
15
                                        block.get_by_position(arguments[0]).column.get())) {
130
15
                                auto col_res =
131
15
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
15
                                                0, type.get_scale());
133
15
                                auto& vec_res = col_res->get_data();
134
15
                                vec_res.resize(col->get_data().size());
135
15
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
15
                                                                                vec_res);
137
15
                                block.replace_by_position(result, std::move(col_res));
138
15
                                return true;
139
15
                            }
140
15
                        }
141
                    } else {
142
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
                            } else {
149
                                auto col_res =
150
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
                                auto& vec_res = col_res->get_data();
152
                                vec_res.resize(col->get_data().size());
153
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
                                                                                vec_res);
155
                                block.replace_by_position(result, std::move(col_res));
156
                            }
157
                            return true;
158
                        }
159
                    }
160
161
0
                    return false;
162
15
                });
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_14DecimalV2ValueEEENS_12NamePositiveELNS_13PrimitiveTypeE20EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS5_20EEEEEDaSI_
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NamePositiveELNS_13PrimitiveTypeE35EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_15DataTypeDecimalILS9_35EEEEEDaSM_
_ZZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIdEENS_12NamePositiveELNS_13PrimitiveTypeE9EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_9EEEEEDaSH_
Line
Count
Source
123
10
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
10
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
10
                    } else {
142
10
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
10
                                    block.get_by_position(arguments[0]).column.get())) {
144
10
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
10
                                block.replace_by_position(
147
10
                                        result, block.get_by_position(arguments[0]).column);
148
                            } else {
149
                                auto col_res =
150
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
                                auto& vec_res = col_res->get_data();
152
                                vec_res.resize(col->get_data().size());
153
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
                                                                                vec_res);
155
                                block.replace_by_position(result, std::move(col_res));
156
                            }
157
10
                            return true;
158
10
                        }
159
10
                    }
160
161
0
                    return false;
162
10
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIlEENS_12NamePositiveELNS_13PrimitiveTypeE6EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_6EEEEEDaSH_
Line
Count
Source
123
14
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
14
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
14
                    } else {
142
14
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
14
                                    block.get_by_position(arguments[0]).column.get())) {
144
14
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
14
                                block.replace_by_position(
147
14
                                        result, block.get_by_position(arguments[0]).column);
148
                            } else {
149
                                auto col_res =
150
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
                                auto& vec_res = col_res->get_data();
152
                                vec_res.resize(col->get_data().size());
153
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
                                                                                vec_res);
155
                                block.replace_by_position(result, std::move(col_res));
156
                            }
157
14
                            return true;
158
14
                        }
159
14
                    }
160
161
0
                    return false;
162
14
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_11RadiansImplIdEENS_11NameRadiansELNS_13PrimitiveTypeE9EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_9EEEEEDaSH_
Line
Count
Source
123
18
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
18
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
18
                    } else {
142
18
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
18
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
18
                            } else {
149
18
                                auto col_res =
150
18
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
18
                                auto& vec_res = col_res->get_data();
152
18
                                vec_res.resize(col->get_data().size());
153
18
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
18
                                                                                vec_res);
155
18
                                block.replace_by_position(result, std::move(col_res));
156
18
                            }
157
18
                            return true;
158
18
                        }
159
18
                    }
160
161
0
                    return false;
162
18
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_11DegreesImplIdEENS_11NameDegreesELNS_13PrimitiveTypeE9EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_9EEEEEDaSH_
Line
Count
Source
123
22
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
22
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
22
                    } else {
142
22
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
22
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
22
                            } else {
149
22
                                auto col_res =
150
22
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
22
                                auto& vec_res = col_res->get_data();
152
22
                                vec_res.resize(col->get_data().size());
153
22
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
22
                                                                                vec_res);
155
22
                                block.replace_by_position(result, std::move(col_res));
156
22
                            }
157
22
                            return true;
158
22
                        }
159
22
                    }
160
161
0
                    return false;
162
22
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_11SignBitImplIdEENS_11NameSignBitELNS_13PrimitiveTypeE9EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_9EEEEEDaSH_
Line
Count
Source
123
25
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
25
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
25
                    } else {
142
25
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
25
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
24
                            } else {
149
24
                                auto col_res =
150
24
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
24
                                auto& vec_res = col_res->get_data();
152
24
                                vec_res.resize(col->get_data().size());
153
24
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
24
                                                                                vec_res);
155
24
                                block.replace_by_position(result, std::move(col_res));
156
24
                            }
157
24
                            return true;
158
24
                        }
159
25
                    }
160
161
1
                    return false;
162
25
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIaEENS_10NameBitNotELNS_13PrimitiveTypeE3EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_3EEEEEDaSH_
Line
Count
Source
123
2
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
2
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
2
                    } else {
142
2
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
2
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
2
                            } else {
149
2
                                auto col_res =
150
2
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
2
                                auto& vec_res = col_res->get_data();
152
2
                                vec_res.resize(col->get_data().size());
153
2
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
2
                                                                                vec_res);
155
2
                                block.replace_by_position(result, std::move(col_res));
156
2
                            }
157
2
                            return true;
158
2
                        }
159
2
                    }
160
161
0
                    return false;
162
2
                });
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIsEENS_10NameBitNotELNS_13PrimitiveTypeE4EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_4EEEEEDaSH_
_ZZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIiEENS_10NameBitNotELNS_13PrimitiveTypeE5EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_5EEEEEDaSH_
Line
Count
Source
123
2
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
2
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
2
                    } else {
142
2
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
2
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
2
                            } else {
149
2
                                auto col_res =
150
2
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
2
                                auto& vec_res = col_res->get_data();
152
2
                                vec_res.resize(col->get_data().size());
153
2
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
2
                                                                                vec_res);
155
2
                                block.replace_by_position(result, std::move(col_res));
156
2
                            }
157
2
                            return true;
158
2
                        }
159
2
                    }
160
161
0
                    return false;
162
2
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIlEENS_10NameBitNotELNS_13PrimitiveTypeE6EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_6EEEEEDaSH_
Line
Count
Source
123
3
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
3
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
3
                    } else {
142
3
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
3
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
3
                            } else {
149
3
                                auto col_res =
150
3
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
3
                                auto& vec_res = col_res->get_data();
152
3
                                vec_res.resize(col->get_data().size());
153
3
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
3
                                                                                vec_res);
155
3
                                block.replace_by_position(result, std::move(col_res));
156
3
                            }
157
3
                            return true;
158
3
                        }
159
3
                    }
160
161
0
                    return false;
162
3
                });
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplInEENS_10NameBitNotELNS_13PrimitiveTypeE7EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_7EEEEEDaSH_
_ZZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIaEENS_12NameBitCountELNS_13PrimitiveTypeE3EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_3EEEEEDaSH_
Line
Count
Source
123
4
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
4
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
4
                    } else {
142
4
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
4
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
4
                            } else {
149
4
                                auto col_res =
150
4
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
4
                                auto& vec_res = col_res->get_data();
152
4
                                vec_res.resize(col->get_data().size());
153
4
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
4
                                                                                vec_res);
155
4
                                block.replace_by_position(result, std::move(col_res));
156
4
                            }
157
4
                            return true;
158
4
                        }
159
4
                    }
160
161
0
                    return false;
162
4
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIsEENS_12NameBitCountELNS_13PrimitiveTypeE4EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_4EEEEEDaSH_
Line
Count
Source
123
1
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
1
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
1
                    } else {
142
1
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
1
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
1
                            } else {
149
1
                                auto col_res =
150
1
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
1
                                auto& vec_res = col_res->get_data();
152
1
                                vec_res.resize(col->get_data().size());
153
1
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
1
                                                                                vec_res);
155
1
                                block.replace_by_position(result, std::move(col_res));
156
1
                            }
157
1
                            return true;
158
1
                        }
159
1
                    }
160
161
0
                    return false;
162
1
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIiEENS_12NameBitCountELNS_13PrimitiveTypeE5EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_5EEEEEDaSH_
Line
Count
Source
123
2
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
2
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
2
                    } else {
142
2
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
2
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
2
                            } else {
149
2
                                auto col_res =
150
2
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
2
                                auto& vec_res = col_res->get_data();
152
2
                                vec_res.resize(col->get_data().size());
153
2
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
2
                                                                                vec_res);
155
2
                                block.replace_by_position(result, std::move(col_res));
156
2
                            }
157
2
                            return true;
158
2
                        }
159
2
                    }
160
161
0
                    return false;
162
2
                });
_ZZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIlEENS_12NameBitCountELNS_13PrimitiveTypeE6EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_6EEEEEDaSH_
Line
Count
Source
123
8
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
8
                    using DataType = std::decay_t<decltype(type)>;
125
126
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
                        if constexpr (allow_decimal) {
128
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
                                        block.get_by_position(arguments[0]).column.get())) {
130
                                auto col_res =
131
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
                                                0, type.get_scale());
133
                                auto& vec_res = col_res->get_data();
134
                                vec_res.resize(col->get_data().size());
135
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
                                                                                vec_res);
137
                                block.replace_by_position(result, std::move(col_res));
138
                                return true;
139
                            }
140
                        }
141
8
                    } else {
142
8
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
8
                                    block.get_by_position(arguments[0]).column.get())) {
144
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
                                block.replace_by_position(
147
                                        result, block.get_by_position(arguments[0]).column);
148
8
                            } else {
149
8
                                auto col_res =
150
8
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
8
                                auto& vec_res = col_res->get_data();
152
8
                                vec_res.resize(col->get_data().size());
153
8
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
8
                                                                                vec_res);
155
8
                                block.replace_by_position(result, std::move(col_res));
156
8
                            }
157
8
                            return true;
158
8
                        }
159
8
                    }
160
161
0
                    return false;
162
8
                });
Unexecuted instantiation: _ZZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplInEENS_12NameBitCountELNS_13PrimitiveTypeE7EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjmENKUlRKT_E_clINS_14DataTypeNumberILS4_7EEEEEDaSH_
163
1.23k
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
1.23k
        return Status::OK();
168
1.23k
    }
_ZNK5doris23FunctionUnaryArithmeticINS_8SignImplIdEENS_8NameSignELNS_13PrimitiveTypeE9EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
70
                        uint32_t result, size_t input_rows_count) const override {
122
70
        bool valid =
123
70
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
70
                    using DataType = std::decay_t<decltype(type)>;
125
126
70
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
70
                        if constexpr (allow_decimal) {
128
70
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
70
                                        block.get_by_position(arguments[0]).column.get())) {
130
70
                                auto col_res =
131
70
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
70
                                                0, type.get_scale());
133
70
                                auto& vec_res = col_res->get_data();
134
70
                                vec_res.resize(col->get_data().size());
135
70
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
70
                                                                                vec_res);
137
70
                                block.replace_by_position(result, std::move(col_res));
138
70
                                return true;
139
70
                            }
140
70
                        }
141
70
                    } else {
142
70
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
70
                                    block.get_by_position(arguments[0]).column.get())) {
144
70
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
70
                                block.replace_by_position(
147
70
                                        result, block.get_by_position(arguments[0]).column);
148
70
                            } else {
149
70
                                auto col_res =
150
70
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
70
                                auto& vec_res = col_res->get_data();
152
70
                                vec_res.resize(col->get_data().size());
153
70
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
70
                                                                                vec_res);
155
70
                                block.replace_by_position(result, std::move(col_res));
156
70
                            }
157
70
                            return true;
158
70
                        }
159
70
                    }
160
161
70
                    return false;
162
70
                });
163
70
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
70
        return Status::OK();
168
70
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIaEENS_7NameAbsELNS_13PrimitiveTypeE3EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
72
                        uint32_t result, size_t input_rows_count) const override {
122
72
        bool valid =
123
72
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
72
                    using DataType = std::decay_t<decltype(type)>;
125
126
72
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
72
                        if constexpr (allow_decimal) {
128
72
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
72
                                        block.get_by_position(arguments[0]).column.get())) {
130
72
                                auto col_res =
131
72
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
72
                                                0, type.get_scale());
133
72
                                auto& vec_res = col_res->get_data();
134
72
                                vec_res.resize(col->get_data().size());
135
72
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
72
                                                                                vec_res);
137
72
                                block.replace_by_position(result, std::move(col_res));
138
72
                                return true;
139
72
                            }
140
72
                        }
141
72
                    } else {
142
72
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
72
                                    block.get_by_position(arguments[0]).column.get())) {
144
72
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
72
                                block.replace_by_position(
147
72
                                        result, block.get_by_position(arguments[0]).column);
148
72
                            } else {
149
72
                                auto col_res =
150
72
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
72
                                auto& vec_res = col_res->get_data();
152
72
                                vec_res.resize(col->get_data().size());
153
72
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
72
                                                                                vec_res);
155
72
                                block.replace_by_position(result, std::move(col_res));
156
72
                            }
157
72
                            return true;
158
72
                        }
159
72
                    }
160
161
72
                    return false;
162
72
                });
163
72
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
72
        return Status::OK();
168
72
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIsEENS_7NameAbsELNS_13PrimitiveTypeE4EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
65
                        uint32_t result, size_t input_rows_count) const override {
122
65
        bool valid =
123
65
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
65
                    using DataType = std::decay_t<decltype(type)>;
125
126
65
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
65
                        if constexpr (allow_decimal) {
128
65
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
65
                                        block.get_by_position(arguments[0]).column.get())) {
130
65
                                auto col_res =
131
65
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
65
                                                0, type.get_scale());
133
65
                                auto& vec_res = col_res->get_data();
134
65
                                vec_res.resize(col->get_data().size());
135
65
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
65
                                                                                vec_res);
137
65
                                block.replace_by_position(result, std::move(col_res));
138
65
                                return true;
139
65
                            }
140
65
                        }
141
65
                    } else {
142
65
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
65
                                    block.get_by_position(arguments[0]).column.get())) {
144
65
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
65
                                block.replace_by_position(
147
65
                                        result, block.get_by_position(arguments[0]).column);
148
65
                            } else {
149
65
                                auto col_res =
150
65
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
65
                                auto& vec_res = col_res->get_data();
152
65
                                vec_res.resize(col->get_data().size());
153
65
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
65
                                                                                vec_res);
155
65
                                block.replace_by_position(result, std::move(col_res));
156
65
                            }
157
65
                            return true;
158
65
                        }
159
65
                    }
160
161
65
                    return false;
162
65
                });
163
65
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
65
        return Status::OK();
168
65
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIiEENS_7NameAbsELNS_13PrimitiveTypeE5EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
366
                        uint32_t result, size_t input_rows_count) const override {
122
366
        bool valid =
123
366
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
366
                    using DataType = std::decay_t<decltype(type)>;
125
126
366
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
366
                        if constexpr (allow_decimal) {
128
366
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
366
                                        block.get_by_position(arguments[0]).column.get())) {
130
366
                                auto col_res =
131
366
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
366
                                                0, type.get_scale());
133
366
                                auto& vec_res = col_res->get_data();
134
366
                                vec_res.resize(col->get_data().size());
135
366
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
366
                                                                                vec_res);
137
366
                                block.replace_by_position(result, std::move(col_res));
138
366
                                return true;
139
366
                            }
140
366
                        }
141
366
                    } else {
142
366
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
366
                                    block.get_by_position(arguments[0]).column.get())) {
144
366
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
366
                                block.replace_by_position(
147
366
                                        result, block.get_by_position(arguments[0]).column);
148
366
                            } else {
149
366
                                auto col_res =
150
366
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
366
                                auto& vec_res = col_res->get_data();
152
366
                                vec_res.resize(col->get_data().size());
153
366
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
366
                                                                                vec_res);
155
366
                                block.replace_by_position(result, std::move(col_res));
156
366
                            }
157
366
                            return true;
158
366
                        }
159
366
                    }
160
161
366
                    return false;
162
366
                });
163
366
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
366
        return Status::OK();
168
366
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIlEENS_7NameAbsELNS_13PrimitiveTypeE6EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
217
                        uint32_t result, size_t input_rows_count) const override {
122
217
        bool valid =
123
217
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
217
                    using DataType = std::decay_t<decltype(type)>;
125
126
217
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
217
                        if constexpr (allow_decimal) {
128
217
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
217
                                        block.get_by_position(arguments[0]).column.get())) {
130
217
                                auto col_res =
131
217
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
217
                                                0, type.get_scale());
133
217
                                auto& vec_res = col_res->get_data();
134
217
                                vec_res.resize(col->get_data().size());
135
217
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
217
                                                                                vec_res);
137
217
                                block.replace_by_position(result, std::move(col_res));
138
217
                                return true;
139
217
                            }
140
217
                        }
141
217
                    } else {
142
217
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
217
                                    block.get_by_position(arguments[0]).column.get())) {
144
217
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
217
                                block.replace_by_position(
147
217
                                        result, block.get_by_position(arguments[0]).column);
148
217
                            } else {
149
217
                                auto col_res =
150
217
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
217
                                auto& vec_res = col_res->get_data();
152
217
                                vec_res.resize(col->get_data().size());
153
217
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
217
                                                                                vec_res);
155
217
                                block.replace_by_position(result, std::move(col_res));
156
217
                            }
157
217
                            return true;
158
217
                        }
159
217
                    }
160
161
217
                    return false;
162
217
                });
163
217
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
217
        return Status::OK();
168
217
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplInEENS_7NameAbsELNS_13PrimitiveTypeE7EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
16
                        uint32_t result, size_t input_rows_count) const override {
122
16
        bool valid =
123
16
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
16
                    using DataType = std::decay_t<decltype(type)>;
125
126
16
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
16
                        if constexpr (allow_decimal) {
128
16
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
16
                                        block.get_by_position(arguments[0]).column.get())) {
130
16
                                auto col_res =
131
16
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
16
                                                0, type.get_scale());
133
16
                                auto& vec_res = col_res->get_data();
134
16
                                vec_res.resize(col->get_data().size());
135
16
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
16
                                                                                vec_res);
137
16
                                block.replace_by_position(result, std::move(col_res));
138
16
                                return true;
139
16
                            }
140
16
                        }
141
16
                    } else {
142
16
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
16
                                    block.get_by_position(arguments[0]).column.get())) {
144
16
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
16
                                block.replace_by_position(
147
16
                                        result, block.get_by_position(arguments[0]).column);
148
16
                            } else {
149
16
                                auto col_res =
150
16
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
16
                                auto& vec_res = col_res->get_data();
152
16
                                vec_res.resize(col->get_data().size());
153
16
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
16
                                                                                vec_res);
155
16
                                block.replace_by_position(result, std::move(col_res));
156
16
                            }
157
16
                            return true;
158
16
                        }
159
16
                    }
160
161
16
                    return false;
162
16
                });
163
16
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
16
        return Status::OK();
168
16
    }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIhEENS_7NameAbsELNS_13PrimitiveTypeE2EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIiEEEENS_7NameAbsELNS_13PrimitiveTypeE28EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
42
                        uint32_t result, size_t input_rows_count) const override {
122
42
        bool valid =
123
42
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
42
                    using DataType = std::decay_t<decltype(type)>;
125
126
42
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
42
                        if constexpr (allow_decimal) {
128
42
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
42
                                        block.get_by_position(arguments[0]).column.get())) {
130
42
                                auto col_res =
131
42
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
42
                                                0, type.get_scale());
133
42
                                auto& vec_res = col_res->get_data();
134
42
                                vec_res.resize(col->get_data().size());
135
42
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
42
                                                                                vec_res);
137
42
                                block.replace_by_position(result, std::move(col_res));
138
42
                                return true;
139
42
                            }
140
42
                        }
141
42
                    } else {
142
42
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
42
                                    block.get_by_position(arguments[0]).column.get())) {
144
42
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
42
                                block.replace_by_position(
147
42
                                        result, block.get_by_position(arguments[0]).column);
148
42
                            } else {
149
42
                                auto col_res =
150
42
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
42
                                auto& vec_res = col_res->get_data();
152
42
                                vec_res.resize(col->get_data().size());
153
42
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
42
                                                                                vec_res);
155
42
                                block.replace_by_position(result, std::move(col_res));
156
42
                            }
157
42
                            return true;
158
42
                        }
159
42
                    }
160
161
42
                    return false;
162
42
                });
163
42
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
42
        return Status::OK();
168
42
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIlEEEENS_7NameAbsELNS_13PrimitiveTypeE29EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
48
                        uint32_t result, size_t input_rows_count) const override {
122
48
        bool valid =
123
48
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
48
                    using DataType = std::decay_t<decltype(type)>;
125
126
48
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
48
                        if constexpr (allow_decimal) {
128
48
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
48
                                        block.get_by_position(arguments[0]).column.get())) {
130
48
                                auto col_res =
131
48
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
48
                                                0, type.get_scale());
133
48
                                auto& vec_res = col_res->get_data();
134
48
                                vec_res.resize(col->get_data().size());
135
48
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
48
                                                                                vec_res);
137
48
                                block.replace_by_position(result, std::move(col_res));
138
48
                                return true;
139
48
                            }
140
48
                        }
141
48
                    } else {
142
48
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
48
                                    block.get_by_position(arguments[0]).column.get())) {
144
48
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
48
                                block.replace_by_position(
147
48
                                        result, block.get_by_position(arguments[0]).column);
148
48
                            } else {
149
48
                                auto col_res =
150
48
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
48
                                auto& vec_res = col_res->get_data();
152
48
                                vec_res.resize(col->get_data().size());
153
48
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
48
                                                                                vec_res);
155
48
                                block.replace_by_position(result, std::move(col_res));
156
48
                            }
157
48
                            return true;
158
48
                        }
159
48
                    }
160
161
48
                    return false;
162
48
                });
163
48
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
48
        return Status::OK();
168
48
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_12Decimal128V3EEENS_7NameAbsELNS_13PrimitiveTypeE30EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
9
                        uint32_t result, size_t input_rows_count) const override {
122
9
        bool valid =
123
9
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
9
                    using DataType = std::decay_t<decltype(type)>;
125
126
9
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
9
                        if constexpr (allow_decimal) {
128
9
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
9
                                        block.get_by_position(arguments[0]).column.get())) {
130
9
                                auto col_res =
131
9
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
9
                                                0, type.get_scale());
133
9
                                auto& vec_res = col_res->get_data();
134
9
                                vec_res.resize(col->get_data().size());
135
9
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
9
                                                                                vec_res);
137
9
                                block.replace_by_position(result, std::move(col_res));
138
9
                                return true;
139
9
                            }
140
9
                        }
141
9
                    } else {
142
9
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
9
                                    block.get_by_position(arguments[0]).column.get())) {
144
9
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
9
                                block.replace_by_position(
147
9
                                        result, block.get_by_position(arguments[0]).column);
148
9
                            } else {
149
9
                                auto col_res =
150
9
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
9
                                auto& vec_res = col_res->get_data();
152
9
                                vec_res.resize(col->get_data().size());
153
9
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
9
                                                                                vec_res);
155
9
                                block.replace_by_position(result, std::move(col_res));
156
9
                            }
157
9
                            return true;
158
9
                        }
159
9
                    }
160
161
9
                    return false;
162
9
                });
163
9
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
9
        return Status::OK();
168
9
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_14DecimalV2ValueEEENS_7NameAbsELNS_13PrimitiveTypeE20EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
6
                        uint32_t result, size_t input_rows_count) const override {
122
6
        bool valid =
123
6
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
6
                    using DataType = std::decay_t<decltype(type)>;
125
126
6
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
6
                        if constexpr (allow_decimal) {
128
6
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
6
                                        block.get_by_position(arguments[0]).column.get())) {
130
6
                                auto col_res =
131
6
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
6
                                                0, type.get_scale());
133
6
                                auto& vec_res = col_res->get_data();
134
6
                                vec_res.resize(col->get_data().size());
135
6
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
6
                                                                                vec_res);
137
6
                                block.replace_by_position(result, std::move(col_res));
138
6
                                return true;
139
6
                            }
140
6
                        }
141
6
                    } else {
142
6
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
6
                                    block.get_by_position(arguments[0]).column.get())) {
144
6
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
6
                                block.replace_by_position(
147
6
                                        result, block.get_by_position(arguments[0]).column);
148
6
                            } else {
149
6
                                auto col_res =
150
6
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
6
                                auto& vec_res = col_res->get_data();
152
6
                                vec_res.resize(col->get_data().size());
153
6
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
6
                                                                                vec_res);
155
6
                                block.replace_by_position(result, std::move(col_res));
156
6
                            }
157
6
                            return true;
158
6
                        }
159
6
                    }
160
161
6
                    return false;
162
6
                });
163
6
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
6
        return Status::OK();
168
6
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_7NameAbsELNS_13PrimitiveTypeE35EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
6
                        uint32_t result, size_t input_rows_count) const override {
122
6
        bool valid =
123
6
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
6
                    using DataType = std::decay_t<decltype(type)>;
125
126
6
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
6
                        if constexpr (allow_decimal) {
128
6
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
6
                                        block.get_by_position(arguments[0]).column.get())) {
130
6
                                auto col_res =
131
6
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
6
                                                0, type.get_scale());
133
6
                                auto& vec_res = col_res->get_data();
134
6
                                vec_res.resize(col->get_data().size());
135
6
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
6
                                                                                vec_res);
137
6
                                block.replace_by_position(result, std::move(col_res));
138
6
                                return true;
139
6
                            }
140
6
                        }
141
6
                    } else {
142
6
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
6
                                    block.get_by_position(arguments[0]).column.get())) {
144
6
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
6
                                block.replace_by_position(
147
6
                                        result, block.get_by_position(arguments[0]).column);
148
6
                            } else {
149
6
                                auto col_res =
150
6
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
6
                                auto& vec_res = col_res->get_data();
152
6
                                vec_res.resize(col->get_data().size());
153
6
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
6
                                                                                vec_res);
155
6
                                block.replace_by_position(result, std::move(col_res));
156
6
                            }
157
6
                            return true;
158
6
                        }
159
6
                    }
160
161
6
                    return false;
162
6
                });
163
6
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
6
        return Status::OK();
168
6
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIfEENS_7NameAbsELNS_13PrimitiveTypeE8EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
33
                        uint32_t result, size_t input_rows_count) const override {
122
33
        bool valid =
123
33
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
33
                    using DataType = std::decay_t<decltype(type)>;
125
126
33
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
33
                        if constexpr (allow_decimal) {
128
33
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
33
                                        block.get_by_position(arguments[0]).column.get())) {
130
33
                                auto col_res =
131
33
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
33
                                                0, type.get_scale());
133
33
                                auto& vec_res = col_res->get_data();
134
33
                                vec_res.resize(col->get_data().size());
135
33
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
33
                                                                                vec_res);
137
33
                                block.replace_by_position(result, std::move(col_res));
138
33
                                return true;
139
33
                            }
140
33
                        }
141
33
                    } else {
142
33
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
33
                                    block.get_by_position(arguments[0]).column.get())) {
144
33
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
33
                                block.replace_by_position(
147
33
                                        result, block.get_by_position(arguments[0]).column);
148
33
                            } else {
149
33
                                auto col_res =
150
33
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
33
                                auto& vec_res = col_res->get_data();
152
33
                                vec_res.resize(col->get_data().size());
153
33
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
33
                                                                                vec_res);
155
33
                                block.replace_by_position(result, std::move(col_res));
156
33
                            }
157
33
                            return true;
158
33
                        }
159
33
                    }
160
161
33
                    return false;
162
33
                });
163
33
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
33
        return Status::OK();
168
33
    }
_ZNK5doris23FunctionUnaryArithmeticINS_7AbsImplIdEENS_7NameAbsELNS_13PrimitiveTypeE9EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
94
                        uint32_t result, size_t input_rows_count) const override {
122
94
        bool valid =
123
94
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
94
                    using DataType = std::decay_t<decltype(type)>;
125
126
94
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
94
                        if constexpr (allow_decimal) {
128
94
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
94
                                        block.get_by_position(arguments[0]).column.get())) {
130
94
                                auto col_res =
131
94
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
94
                                                0, type.get_scale());
133
94
                                auto& vec_res = col_res->get_data();
134
94
                                vec_res.resize(col->get_data().size());
135
94
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
94
                                                                                vec_res);
137
94
                                block.replace_by_position(result, std::move(col_res));
138
94
                                return true;
139
94
                            }
140
94
                        }
141
94
                    } else {
142
94
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
94
                                    block.get_by_position(arguments[0]).column.get())) {
144
94
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
94
                                block.replace_by_position(
147
94
                                        result, block.get_by_position(arguments[0]).column);
148
94
                            } else {
149
94
                                auto col_res =
150
94
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
94
                                auto& vec_res = col_res->get_data();
152
94
                                vec_res.resize(col->get_data().size());
153
94
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
94
                                                                                vec_res);
155
94
                                block.replace_by_position(result, std::move(col_res));
156
94
                            }
157
94
                            return true;
158
94
                        }
159
94
                    }
160
161
94
                    return false;
162
94
                });
163
94
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
94
        return Status::OK();
168
94
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIdEENS_12NameNegativeELNS_13PrimitiveTypeE9EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
18
                        uint32_t result, size_t input_rows_count) const override {
122
18
        bool valid =
123
18
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
18
                    using DataType = std::decay_t<decltype(type)>;
125
126
18
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
18
                        if constexpr (allow_decimal) {
128
18
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
18
                                        block.get_by_position(arguments[0]).column.get())) {
130
18
                                auto col_res =
131
18
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
18
                                                0, type.get_scale());
133
18
                                auto& vec_res = col_res->get_data();
134
18
                                vec_res.resize(col->get_data().size());
135
18
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
18
                                                                                vec_res);
137
18
                                block.replace_by_position(result, std::move(col_res));
138
18
                                return true;
139
18
                            }
140
18
                        }
141
18
                    } else {
142
18
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
18
                                    block.get_by_position(arguments[0]).column.get())) {
144
18
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
18
                                block.replace_by_position(
147
18
                                        result, block.get_by_position(arguments[0]).column);
148
18
                            } else {
149
18
                                auto col_res =
150
18
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
18
                                auto& vec_res = col_res->get_data();
152
18
                                vec_res.resize(col->get_data().size());
153
18
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
18
                                                                                vec_res);
155
18
                                block.replace_by_position(result, std::move(col_res));
156
18
                            }
157
18
                            return true;
158
18
                        }
159
18
                    }
160
161
18
                    return false;
162
18
                });
163
18
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
18
        return Status::OK();
168
18
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplIlEENS_12NameNegativeELNS_13PrimitiveTypeE6EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
22
                        uint32_t result, size_t input_rows_count) const override {
122
22
        bool valid =
123
22
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
22
                    using DataType = std::decay_t<decltype(type)>;
125
126
22
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
22
                        if constexpr (allow_decimal) {
128
22
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
22
                                        block.get_by_position(arguments[0]).column.get())) {
130
22
                                auto col_res =
131
22
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
22
                                                0, type.get_scale());
133
22
                                auto& vec_res = col_res->get_data();
134
22
                                vec_res.resize(col->get_data().size());
135
22
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
22
                                                                                vec_res);
137
22
                                block.replace_by_position(result, std::move(col_res));
138
22
                                return true;
139
22
                            }
140
22
                        }
141
22
                    } else {
142
22
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
22
                                    block.get_by_position(arguments[0]).column.get())) {
144
22
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
22
                                block.replace_by_position(
147
22
                                        result, block.get_by_position(arguments[0]).column);
148
22
                            } else {
149
22
                                auto col_res =
150
22
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
22
                                auto& vec_res = col_res->get_data();
152
22
                                vec_res.resize(col->get_data().size());
153
22
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
22
                                                                                vec_res);
155
22
                                block.replace_by_position(result, std::move(col_res));
156
22
                            }
157
22
                            return true;
158
22
                        }
159
22
                    }
160
161
22
                    return false;
162
22
                });
163
22
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
22
        return Status::OK();
168
22
    }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_14DecimalV2ValueEEENS_12NameNegativeELNS_13PrimitiveTypeE20EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NameNegativeELNS_13PrimitiveTypeE35EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_12Decimal128V3EEENS_12NameNegativeELNS_13PrimitiveTypeE30EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIiEEEENS_12NameNegativeELNS_13PrimitiveTypeE28EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
12
                        uint32_t result, size_t input_rows_count) const override {
122
12
        bool valid =
123
12
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
12
                    using DataType = std::decay_t<decltype(type)>;
125
126
12
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
12
                        if constexpr (allow_decimal) {
128
12
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
12
                                        block.get_by_position(arguments[0]).column.get())) {
130
12
                                auto col_res =
131
12
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
12
                                                0, type.get_scale());
133
12
                                auto& vec_res = col_res->get_data();
134
12
                                vec_res.resize(col->get_data().size());
135
12
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
12
                                                                                vec_res);
137
12
                                block.replace_by_position(result, std::move(col_res));
138
12
                                return true;
139
12
                            }
140
12
                        }
141
12
                    } else {
142
12
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
12
                                    block.get_by_position(arguments[0]).column.get())) {
144
12
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
12
                                block.replace_by_position(
147
12
                                        result, block.get_by_position(arguments[0]).column);
148
12
                            } else {
149
12
                                auto col_res =
150
12
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
12
                                auto& vec_res = col_res->get_data();
152
12
                                vec_res.resize(col->get_data().size());
153
12
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
12
                                                                                vec_res);
155
12
                                block.replace_by_position(result, std::move(col_res));
156
12
                            }
157
12
                            return true;
158
12
                        }
159
12
                    }
160
161
12
                    return false;
162
12
                });
163
12
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
12
        return Status::OK();
168
12
    }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12NegativeImplINS_7DecimalIlEEEENS_12NameNegativeELNS_13PrimitiveTypeE29EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIiEEEENS_12NamePositiveELNS_13PrimitiveTypeE28EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
10
                        uint32_t result, size_t input_rows_count) const override {
122
10
        bool valid =
123
10
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
10
                    using DataType = std::decay_t<decltype(type)>;
125
126
10
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
10
                        if constexpr (allow_decimal) {
128
10
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
10
                                        block.get_by_position(arguments[0]).column.get())) {
130
10
                                auto col_res =
131
10
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
10
                                                0, type.get_scale());
133
10
                                auto& vec_res = col_res->get_data();
134
10
                                vec_res.resize(col->get_data().size());
135
10
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
10
                                                                                vec_res);
137
10
                                block.replace_by_position(result, std::move(col_res));
138
10
                                return true;
139
10
                            }
140
10
                        }
141
10
                    } else {
142
10
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
10
                                    block.get_by_position(arguments[0]).column.get())) {
144
10
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
10
                                block.replace_by_position(
147
10
                                        result, block.get_by_position(arguments[0]).column);
148
10
                            } else {
149
10
                                auto col_res =
150
10
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
10
                                auto& vec_res = col_res->get_data();
152
10
                                vec_res.resize(col->get_data().size());
153
10
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
10
                                                                                vec_res);
155
10
                                block.replace_by_position(result, std::move(col_res));
156
10
                            }
157
10
                            return true;
158
10
                        }
159
10
                    }
160
161
10
                    return false;
162
10
                });
163
10
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
10
        return Status::OK();
168
10
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIlEEEENS_12NamePositiveELNS_13PrimitiveTypeE29EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
6
                        uint32_t result, size_t input_rows_count) const override {
122
6
        bool valid =
123
6
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
6
                    using DataType = std::decay_t<decltype(type)>;
125
126
6
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
6
                        if constexpr (allow_decimal) {
128
6
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
6
                                        block.get_by_position(arguments[0]).column.get())) {
130
6
                                auto col_res =
131
6
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
6
                                                0, type.get_scale());
133
6
                                auto& vec_res = col_res->get_data();
134
6
                                vec_res.resize(col->get_data().size());
135
6
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
6
                                                                                vec_res);
137
6
                                block.replace_by_position(result, std::move(col_res));
138
6
                                return true;
139
6
                            }
140
6
                        }
141
6
                    } else {
142
6
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
6
                                    block.get_by_position(arguments[0]).column.get())) {
144
6
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
6
                                block.replace_by_position(
147
6
                                        result, block.get_by_position(arguments[0]).column);
148
6
                            } else {
149
6
                                auto col_res =
150
6
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
6
                                auto& vec_res = col_res->get_data();
152
6
                                vec_res.resize(col->get_data().size());
153
6
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
6
                                                                                vec_res);
155
6
                                block.replace_by_position(result, std::move(col_res));
156
6
                            }
157
6
                            return true;
158
6
                        }
159
6
                    }
160
161
6
                    return false;
162
6
                });
163
6
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
6
        return Status::OK();
168
6
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_12Decimal128V3EEENS_12NamePositiveELNS_13PrimitiveTypeE30EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
15
                        uint32_t result, size_t input_rows_count) const override {
122
15
        bool valid =
123
15
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
15
                    using DataType = std::decay_t<decltype(type)>;
125
126
15
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
15
                        if constexpr (allow_decimal) {
128
15
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
15
                                        block.get_by_position(arguments[0]).column.get())) {
130
15
                                auto col_res =
131
15
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
15
                                                0, type.get_scale());
133
15
                                auto& vec_res = col_res->get_data();
134
15
                                vec_res.resize(col->get_data().size());
135
15
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
15
                                                                                vec_res);
137
15
                                block.replace_by_position(result, std::move(col_res));
138
15
                                return true;
139
15
                            }
140
15
                        }
141
15
                    } else {
142
15
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
15
                                    block.get_by_position(arguments[0]).column.get())) {
144
15
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
15
                                block.replace_by_position(
147
15
                                        result, block.get_by_position(arguments[0]).column);
148
15
                            } else {
149
15
                                auto col_res =
150
15
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
15
                                auto& vec_res = col_res->get_data();
152
15
                                vec_res.resize(col->get_data().size());
153
15
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
15
                                                                                vec_res);
155
15
                                block.replace_by_position(result, std::move(col_res));
156
15
                            }
157
15
                            return true;
158
15
                        }
159
15
                    }
160
161
15
                    return false;
162
15
                });
163
15
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
15
        return Status::OK();
168
15
    }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_14DecimalV2ValueEEENS_12NamePositiveELNS_13PrimitiveTypeE20EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12NamePositiveELNS_13PrimitiveTypeE35EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIdEENS_12NamePositiveELNS_13PrimitiveTypeE9EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
10
                        uint32_t result, size_t input_rows_count) const override {
122
10
        bool valid =
123
10
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
10
                    using DataType = std::decay_t<decltype(type)>;
125
126
10
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
10
                        if constexpr (allow_decimal) {
128
10
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
10
                                        block.get_by_position(arguments[0]).column.get())) {
130
10
                                auto col_res =
131
10
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
10
                                                0, type.get_scale());
133
10
                                auto& vec_res = col_res->get_data();
134
10
                                vec_res.resize(col->get_data().size());
135
10
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
10
                                                                                vec_res);
137
10
                                block.replace_by_position(result, std::move(col_res));
138
10
                                return true;
139
10
                            }
140
10
                        }
141
10
                    } else {
142
10
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
10
                                    block.get_by_position(arguments[0]).column.get())) {
144
10
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
10
                                block.replace_by_position(
147
10
                                        result, block.get_by_position(arguments[0]).column);
148
10
                            } else {
149
10
                                auto col_res =
150
10
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
10
                                auto& vec_res = col_res->get_data();
152
10
                                vec_res.resize(col->get_data().size());
153
10
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
10
                                                                                vec_res);
155
10
                                block.replace_by_position(result, std::move(col_res));
156
10
                            }
157
10
                            return true;
158
10
                        }
159
10
                    }
160
161
10
                    return false;
162
10
                });
163
10
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
10
        return Status::OK();
168
10
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12PositiveImplIlEENS_12NamePositiveELNS_13PrimitiveTypeE6EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
14
                        uint32_t result, size_t input_rows_count) const override {
122
14
        bool valid =
123
14
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
14
                    using DataType = std::decay_t<decltype(type)>;
125
126
14
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
14
                        if constexpr (allow_decimal) {
128
14
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
14
                                        block.get_by_position(arguments[0]).column.get())) {
130
14
                                auto col_res =
131
14
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
14
                                                0, type.get_scale());
133
14
                                auto& vec_res = col_res->get_data();
134
14
                                vec_res.resize(col->get_data().size());
135
14
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
14
                                                                                vec_res);
137
14
                                block.replace_by_position(result, std::move(col_res));
138
14
                                return true;
139
14
                            }
140
14
                        }
141
14
                    } else {
142
14
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
14
                                    block.get_by_position(arguments[0]).column.get())) {
144
14
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
14
                                block.replace_by_position(
147
14
                                        result, block.get_by_position(arguments[0]).column);
148
14
                            } else {
149
14
                                auto col_res =
150
14
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
14
                                auto& vec_res = col_res->get_data();
152
14
                                vec_res.resize(col->get_data().size());
153
14
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
14
                                                                                vec_res);
155
14
                                block.replace_by_position(result, std::move(col_res));
156
14
                            }
157
14
                            return true;
158
14
                        }
159
14
                    }
160
161
14
                    return false;
162
14
                });
163
14
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
14
        return Status::OK();
168
14
    }
_ZNK5doris23FunctionUnaryArithmeticINS_11RadiansImplIdEENS_11NameRadiansELNS_13PrimitiveTypeE9EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
18
                        uint32_t result, size_t input_rows_count) const override {
122
18
        bool valid =
123
18
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
18
                    using DataType = std::decay_t<decltype(type)>;
125
126
18
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
18
                        if constexpr (allow_decimal) {
128
18
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
18
                                        block.get_by_position(arguments[0]).column.get())) {
130
18
                                auto col_res =
131
18
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
18
                                                0, type.get_scale());
133
18
                                auto& vec_res = col_res->get_data();
134
18
                                vec_res.resize(col->get_data().size());
135
18
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
18
                                                                                vec_res);
137
18
                                block.replace_by_position(result, std::move(col_res));
138
18
                                return true;
139
18
                            }
140
18
                        }
141
18
                    } else {
142
18
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
18
                                    block.get_by_position(arguments[0]).column.get())) {
144
18
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
18
                                block.replace_by_position(
147
18
                                        result, block.get_by_position(arguments[0]).column);
148
18
                            } else {
149
18
                                auto col_res =
150
18
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
18
                                auto& vec_res = col_res->get_data();
152
18
                                vec_res.resize(col->get_data().size());
153
18
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
18
                                                                                vec_res);
155
18
                                block.replace_by_position(result, std::move(col_res));
156
18
                            }
157
18
                            return true;
158
18
                        }
159
18
                    }
160
161
18
                    return false;
162
18
                });
163
18
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
18
        return Status::OK();
168
18
    }
_ZNK5doris23FunctionUnaryArithmeticINS_11DegreesImplIdEENS_11NameDegreesELNS_13PrimitiveTypeE9EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
22
                        uint32_t result, size_t input_rows_count) const override {
122
22
        bool valid =
123
22
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
22
                    using DataType = std::decay_t<decltype(type)>;
125
126
22
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
22
                        if constexpr (allow_decimal) {
128
22
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
22
                                        block.get_by_position(arguments[0]).column.get())) {
130
22
                                auto col_res =
131
22
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
22
                                                0, type.get_scale());
133
22
                                auto& vec_res = col_res->get_data();
134
22
                                vec_res.resize(col->get_data().size());
135
22
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
22
                                                                                vec_res);
137
22
                                block.replace_by_position(result, std::move(col_res));
138
22
                                return true;
139
22
                            }
140
22
                        }
141
22
                    } else {
142
22
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
22
                                    block.get_by_position(arguments[0]).column.get())) {
144
22
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
22
                                block.replace_by_position(
147
22
                                        result, block.get_by_position(arguments[0]).column);
148
22
                            } else {
149
22
                                auto col_res =
150
22
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
22
                                auto& vec_res = col_res->get_data();
152
22
                                vec_res.resize(col->get_data().size());
153
22
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
22
                                                                                vec_res);
155
22
                                block.replace_by_position(result, std::move(col_res));
156
22
                            }
157
22
                            return true;
158
22
                        }
159
22
                    }
160
161
22
                    return false;
162
22
                });
163
22
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
22
        return Status::OK();
168
22
    }
_ZNK5doris23FunctionUnaryArithmeticINS_11SignBitImplIdEENS_11NameSignBitELNS_13PrimitiveTypeE9EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
24
                        uint32_t result, size_t input_rows_count) const override {
122
24
        bool valid =
123
24
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
24
                    using DataType = std::decay_t<decltype(type)>;
125
126
24
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
24
                        if constexpr (allow_decimal) {
128
24
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
24
                                        block.get_by_position(arguments[0]).column.get())) {
130
24
                                auto col_res =
131
24
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
24
                                                0, type.get_scale());
133
24
                                auto& vec_res = col_res->get_data();
134
24
                                vec_res.resize(col->get_data().size());
135
24
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
24
                                                                                vec_res);
137
24
                                block.replace_by_position(result, std::move(col_res));
138
24
                                return true;
139
24
                            }
140
24
                        }
141
24
                    } else {
142
24
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
24
                                    block.get_by_position(arguments[0]).column.get())) {
144
24
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
24
                                block.replace_by_position(
147
24
                                        result, block.get_by_position(arguments[0]).column);
148
24
                            } else {
149
24
                                auto col_res =
150
24
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
24
                                auto& vec_res = col_res->get_data();
152
24
                                vec_res.resize(col->get_data().size());
153
24
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
24
                                                                                vec_res);
155
24
                                block.replace_by_position(result, std::move(col_res));
156
24
                            }
157
24
                            return true;
158
24
                        }
159
24
                    }
160
161
24
                    return false;
162
24
                });
163
24
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
24
        return Status::OK();
168
24
    }
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIaEENS_10NameBitNotELNS_13PrimitiveTypeE3EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
2
                        uint32_t result, size_t input_rows_count) const override {
122
2
        bool valid =
123
2
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
2
                    using DataType = std::decay_t<decltype(type)>;
125
126
2
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
2
                        if constexpr (allow_decimal) {
128
2
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
2
                                        block.get_by_position(arguments[0]).column.get())) {
130
2
                                auto col_res =
131
2
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
2
                                                0, type.get_scale());
133
2
                                auto& vec_res = col_res->get_data();
134
2
                                vec_res.resize(col->get_data().size());
135
2
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
2
                                                                                vec_res);
137
2
                                block.replace_by_position(result, std::move(col_res));
138
2
                                return true;
139
2
                            }
140
2
                        }
141
2
                    } else {
142
2
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
2
                                    block.get_by_position(arguments[0]).column.get())) {
144
2
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
2
                                block.replace_by_position(
147
2
                                        result, block.get_by_position(arguments[0]).column);
148
2
                            } else {
149
2
                                auto col_res =
150
2
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
2
                                auto& vec_res = col_res->get_data();
152
2
                                vec_res.resize(col->get_data().size());
153
2
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
2
                                                                                vec_res);
155
2
                                block.replace_by_position(result, std::move(col_res));
156
2
                            }
157
2
                            return true;
158
2
                        }
159
2
                    }
160
161
2
                    return false;
162
2
                });
163
2
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
2
        return Status::OK();
168
2
    }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIsEENS_10NameBitNotELNS_13PrimitiveTypeE4EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIiEENS_10NameBitNotELNS_13PrimitiveTypeE5EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
2
                        uint32_t result, size_t input_rows_count) const override {
122
2
        bool valid =
123
2
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
2
                    using DataType = std::decay_t<decltype(type)>;
125
126
2
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
2
                        if constexpr (allow_decimal) {
128
2
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
2
                                        block.get_by_position(arguments[0]).column.get())) {
130
2
                                auto col_res =
131
2
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
2
                                                0, type.get_scale());
133
2
                                auto& vec_res = col_res->get_data();
134
2
                                vec_res.resize(col->get_data().size());
135
2
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
2
                                                                                vec_res);
137
2
                                block.replace_by_position(result, std::move(col_res));
138
2
                                return true;
139
2
                            }
140
2
                        }
141
2
                    } else {
142
2
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
2
                                    block.get_by_position(arguments[0]).column.get())) {
144
2
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
2
                                block.replace_by_position(
147
2
                                        result, block.get_by_position(arguments[0]).column);
148
2
                            } else {
149
2
                                auto col_res =
150
2
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
2
                                auto& vec_res = col_res->get_data();
152
2
                                vec_res.resize(col->get_data().size());
153
2
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
2
                                                                                vec_res);
155
2
                                block.replace_by_position(result, std::move(col_res));
156
2
                            }
157
2
                            return true;
158
2
                        }
159
2
                    }
160
161
2
                    return false;
162
2
                });
163
2
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
2
        return Status::OK();
168
2
    }
_ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplIlEENS_10NameBitNotELNS_13PrimitiveTypeE6EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
3
                        uint32_t result, size_t input_rows_count) const override {
122
3
        bool valid =
123
3
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
3
                    using DataType = std::decay_t<decltype(type)>;
125
126
3
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
3
                        if constexpr (allow_decimal) {
128
3
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
3
                                        block.get_by_position(arguments[0]).column.get())) {
130
3
                                auto col_res =
131
3
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
3
                                                0, type.get_scale());
133
3
                                auto& vec_res = col_res->get_data();
134
3
                                vec_res.resize(col->get_data().size());
135
3
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
3
                                                                                vec_res);
137
3
                                block.replace_by_position(result, std::move(col_res));
138
3
                                return true;
139
3
                            }
140
3
                        }
141
3
                    } else {
142
3
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
3
                                    block.get_by_position(arguments[0]).column.get())) {
144
3
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
3
                                block.replace_by_position(
147
3
                                        result, block.get_by_position(arguments[0]).column);
148
3
                            } else {
149
3
                                auto col_res =
150
3
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
3
                                auto& vec_res = col_res->get_data();
152
3
                                vec_res.resize(col->get_data().size());
153
3
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
3
                                                                                vec_res);
155
3
                                block.replace_by_position(result, std::move(col_res));
156
3
                            }
157
3
                            return true;
158
3
                        }
159
3
                    }
160
161
3
                    return false;
162
3
                });
163
3
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
3
        return Status::OK();
168
3
    }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_10BitNotImplInEENS_10NameBitNotELNS_13PrimitiveTypeE7EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIaEENS_12NameBitCountELNS_13PrimitiveTypeE3EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
4
                        uint32_t result, size_t input_rows_count) const override {
122
4
        bool valid =
123
4
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
4
                    using DataType = std::decay_t<decltype(type)>;
125
126
4
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
4
                        if constexpr (allow_decimal) {
128
4
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
4
                                        block.get_by_position(arguments[0]).column.get())) {
130
4
                                auto col_res =
131
4
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
4
                                                0, type.get_scale());
133
4
                                auto& vec_res = col_res->get_data();
134
4
                                vec_res.resize(col->get_data().size());
135
4
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
4
                                                                                vec_res);
137
4
                                block.replace_by_position(result, std::move(col_res));
138
4
                                return true;
139
4
                            }
140
4
                        }
141
4
                    } else {
142
4
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
4
                                    block.get_by_position(arguments[0]).column.get())) {
144
4
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
4
                                block.replace_by_position(
147
4
                                        result, block.get_by_position(arguments[0]).column);
148
4
                            } else {
149
4
                                auto col_res =
150
4
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
4
                                auto& vec_res = col_res->get_data();
152
4
                                vec_res.resize(col->get_data().size());
153
4
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
4
                                                                                vec_res);
155
4
                                block.replace_by_position(result, std::move(col_res));
156
4
                            }
157
4
                            return true;
158
4
                        }
159
4
                    }
160
161
4
                    return false;
162
4
                });
163
4
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
4
        return Status::OK();
168
4
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIsEENS_12NameBitCountELNS_13PrimitiveTypeE4EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
1
                        uint32_t result, size_t input_rows_count) const override {
122
1
        bool valid =
123
1
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
1
                    using DataType = std::decay_t<decltype(type)>;
125
126
1
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
1
                        if constexpr (allow_decimal) {
128
1
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
1
                                        block.get_by_position(arguments[0]).column.get())) {
130
1
                                auto col_res =
131
1
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
1
                                                0, type.get_scale());
133
1
                                auto& vec_res = col_res->get_data();
134
1
                                vec_res.resize(col->get_data().size());
135
1
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
1
                                                                                vec_res);
137
1
                                block.replace_by_position(result, std::move(col_res));
138
1
                                return true;
139
1
                            }
140
1
                        }
141
1
                    } else {
142
1
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
1
                                    block.get_by_position(arguments[0]).column.get())) {
144
1
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
1
                                block.replace_by_position(
147
1
                                        result, block.get_by_position(arguments[0]).column);
148
1
                            } else {
149
1
                                auto col_res =
150
1
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
1
                                auto& vec_res = col_res->get_data();
152
1
                                vec_res.resize(col->get_data().size());
153
1
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
1
                                                                                vec_res);
155
1
                                block.replace_by_position(result, std::move(col_res));
156
1
                            }
157
1
                            return true;
158
1
                        }
159
1
                    }
160
161
1
                    return false;
162
1
                });
163
1
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
1
        return Status::OK();
168
1
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIiEENS_12NameBitCountELNS_13PrimitiveTypeE5EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
2
                        uint32_t result, size_t input_rows_count) const override {
122
2
        bool valid =
123
2
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
2
                    using DataType = std::decay_t<decltype(type)>;
125
126
2
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
2
                        if constexpr (allow_decimal) {
128
2
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
2
                                        block.get_by_position(arguments[0]).column.get())) {
130
2
                                auto col_res =
131
2
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
2
                                                0, type.get_scale());
133
2
                                auto& vec_res = col_res->get_data();
134
2
                                vec_res.resize(col->get_data().size());
135
2
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
2
                                                                                vec_res);
137
2
                                block.replace_by_position(result, std::move(col_res));
138
2
                                return true;
139
2
                            }
140
2
                        }
141
2
                    } else {
142
2
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
2
                                    block.get_by_position(arguments[0]).column.get())) {
144
2
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
2
                                block.replace_by_position(
147
2
                                        result, block.get_by_position(arguments[0]).column);
148
2
                            } else {
149
2
                                auto col_res =
150
2
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
2
                                auto& vec_res = col_res->get_data();
152
2
                                vec_res.resize(col->get_data().size());
153
2
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
2
                                                                                vec_res);
155
2
                                block.replace_by_position(result, std::move(col_res));
156
2
                            }
157
2
                            return true;
158
2
                        }
159
2
                    }
160
161
2
                    return false;
162
2
                });
163
2
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
2
        return Status::OK();
168
2
    }
_ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplIlEENS_12NameBitCountELNS_13PrimitiveTypeE6EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
121
8
                        uint32_t result, size_t input_rows_count) const override {
122
8
        bool valid =
123
8
                cast_type(block.get_by_position(arguments[0]).type.get(), [&](const auto& type) {
124
8
                    using DataType = std::decay_t<decltype(type)>;
125
126
8
                    if constexpr (IsDataTypeDecimal<DataType>) {
127
8
                        if constexpr (allow_decimal) {
128
8
                            if (auto col = check_and_get_column<ColumnDecimal<DataType::PType>>(
129
8
                                        block.get_by_position(arguments[0]).column.get())) {
130
8
                                auto col_res =
131
8
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create(
132
8
                                                0, type.get_scale());
133
8
                                auto& vec_res = col_res->get_data();
134
8
                                vec_res.resize(col->get_data().size());
135
8
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
136
8
                                                                                vec_res);
137
8
                                block.replace_by_position(result, std::move(col_res));
138
8
                                return true;
139
8
                            }
140
8
                        }
141
8
                    } else {
142
8
                        if (auto col = check_and_get_column<ColumnVector<DataType::PType>>(
143
8
                                    block.get_by_position(arguments[0]).column.get())) {
144
8
                            if constexpr (std::string_view(Name::name) == "positive") {
145
                                // Positive preserves the type, so its immutable input can be shared.
146
8
                                block.replace_by_position(
147
8
                                        result, block.get_by_position(arguments[0]).column);
148
8
                            } else {
149
8
                                auto col_res =
150
8
                                        PrimitiveTypeTraits<Op::ResultType>::ColumnType::create();
151
8
                                auto& vec_res = col_res->get_data();
152
8
                                vec_res.resize(col->get_data().size());
153
8
                                UnaryOperationImpl<DataType::PType, Op>::vector(col->get_data(),
154
8
                                                                                vec_res);
155
8
                                block.replace_by_position(result, std::move(col_res));
156
8
                            }
157
8
                            return true;
158
8
                        }
159
8
                    }
160
161
8
                    return false;
162
8
                });
163
8
        if (!valid) {
164
0
            return Status::RuntimeError("{}'s argument does not match the expected data type",
165
0
                                        get_name());
166
0
        }
167
8
        return Status::OK();
168
8
    }
Unexecuted instantiation: _ZNK5doris23FunctionUnaryArithmeticINS_12BitCountImplInEENS_12NameBitCountELNS_13PrimitiveTypeE7EE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
169
};
170
171
} // namespace doris