Coverage Report

Created: 2026-10-27 15:35

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/exprs/function/geo/functions_geo.h
Line
Count
Source
1
// Licensed to the Apache Software Foundation (ASF) under one
2
// or more contributor license agreements.  See the NOTICE file
3
// distributed with this work for additional information
4
// regarding copyright ownership.  The ASF licenses this file
5
// to you under the Apache License, Version 2.0 (the
6
// "License"); you may not use this file except in compliance
7
// with the License.  You may obtain a copy of the License at
8
//
9
//   http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing,
12
// software distributed under the License is distributed on an
13
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
// KIND, either express or implied.  See the License for the
15
// specific language governing permissions and limitations
16
// under the License.
17
18
#pragma once
19
20
#include <stddef.h>
21
22
#include <memory>
23
#include <string>
24
#include <vector>
25
26
#include "common/status.h"
27
#include "core/block/column_numbers.h"
28
#include "core/data_type/data_type.h"
29
#include "core/types.h"
30
#include "exprs/function/function.h"
31
#include "exprs/function_context.h"
32
33
namespace doris {
34
class GeoShape;
35
36
class Block;
37
} // namespace doris
38
39
namespace doris {
40
41
struct StConstructState {
42
0
    StConstructState() : is_null(false) {}
43
0
    ~StConstructState() {}
44
45
    bool is_null;
46
    std::string encoded_buf;
47
};
48
49
struct StContainsState {
50
0
    StContainsState() : is_null(false), shapes {nullptr, nullptr} {}
51
0
    ~StContainsState() {}
52
    bool is_null;
53
    std::vector<std::shared_ptr<GeoShape>> shapes;
54
};
55
56
#ifdef BE_TEST
57
size_t geography_calculation_edges_for_test(const std::string& left, const std::string& right,
58
                                            size_t* exact_proofs = nullptr,
59
                                            size_t* candidate_visits = nullptr);
60
#endif
61
62
Status validate_spatial_wkb_inputs(const Block& block, const ColumnNumbers& arguments);
63
64
// Decode physical binary storage using the spatial identity supplied by the table schema.
65
Status append_spatial_wkb(const ColumnPtr& source, IColumn& destination,
66
                          const DataTypePtr& spatial_type,
67
                          const NullMap::value_type* null_map = nullptr);
68
69
template <typename Impl>
70
class GeoFunction : public IFunction {
71
public:
72
    static constexpr auto name = Impl::NAME;
73
    using ReturnType = typename Impl::Type;
74
60
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_7StPointEE6createEv
Line
Count
Source
74
9
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_16StDistanceSphereEE6createEv
Line
Count
Source
74
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StAngleSphereEE6createEv
Line
Count
Source
74
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_8StCircleEE6createEv
Line
Count
Source
74
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE6createEv
Line
Count
Source
74
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE6createEv
Line
Count
Source
74
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE6createEv
Line
Count
Source
74
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE6createEv
Line
Count
Source
74
2
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE6createEv
Line
Count
Source
74
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE6createEv
Line
Count
Source
74
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE6createEv
Line
Count
Source
74
2
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_10StIsClosedEE6createEv
Line
Count
Source
74
9
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_15StNumGeometriesEE6createEv
Line
Count
Source
74
7
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_11StNumPointsEE6createEv
Line
Count
Source
74
7
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
75
34
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_7StPointEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_3StXEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_3StYEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_16StDistanceSphereEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_7StAngleEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_8StCircleEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StAreaSquareMetersEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_14StAreaSquareKmEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_10StAsBinaryEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_8StLengthEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb0EEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb1EEEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_10StIsClosedEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_15StNumGeometriesEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_11StNumPointsEE8get_nameB5cxx11Ev
Line
Count
Source
75
1
    String get_name() const override { return name; }
76
1.13k
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_7StPointEE23get_number_of_argumentsEv
Line
Count
Source
76
7
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE23get_number_of_argumentsEv
Line
Count
Source
76
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE23get_number_of_argumentsEv
Line
Count
Source
76
13
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_3StXEE23get_number_of_argumentsEv
Line
Count
Source
76
5
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_3StYEE23get_number_of_argumentsEv
Line
Count
Source
76
5
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_16StDistanceSphereEE23get_number_of_argumentsEv
Line
Count
Source
76
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE23get_number_of_argumentsEv
Line
Count
Source
76
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_7StAngleEE23get_number_of_argumentsEv
Line
Count
Source
76
25
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE23get_number_of_argumentsEv
Line
Count
Source
76
38
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
76
129
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
76
172
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
76
140
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
76
170
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
76
94
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
76
77
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
76
60
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_8StCircleEE23get_number_of_argumentsEv
Line
Count
Source
76
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE23get_number_of_argumentsEv
Line
Count
Source
76
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE23get_number_of_argumentsEv
Line
Count
Source
76
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE23get_number_of_argumentsEv
Line
Count
Source
76
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
Unexecuted instantiation: _ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE23get_number_of_argumentsEv
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE23get_number_of_argumentsEv
Line
Count
Source
76
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE23get_number_of_argumentsEv
Line
Count
Source
76
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
Unexecuted instantiation: _ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE23get_number_of_argumentsEv
_ZNK5doris11GeoFunctionINS_18StAreaSquareMetersEE23get_number_of_argumentsEv
Line
Count
Source
76
32
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_14StAreaSquareKmEE23get_number_of_argumentsEv
Line
Count
Source
76
22
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_10StAsBinaryEE23get_number_of_argumentsEv
Line
Count
Source
76
17
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_8StLengthEE23get_number_of_argumentsEv
Line
Count
Source
76
13
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE23get_number_of_argumentsEv
Line
Count
Source
76
3
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb0EEEE23get_number_of_argumentsEv
Line
Count
Source
76
54
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb1EEEE23get_number_of_argumentsEv
Line
Count
Source
76
30
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_10StIsClosedEE23get_number_of_argumentsEv
Line
Count
Source
76
7
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_15StNumGeometriesEE23get_number_of_argumentsEv
Line
Count
Source
76
5
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_11StNumPointsEE23get_number_of_argumentsEv
Line
Count
Source
76
5
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
77
1.16k
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_7StPointEE11is_variadicEv
Line
Count
Source
77
8
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE11is_variadicEv
Line
Count
Source
77
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE11is_variadicEv
Line
Count
Source
77
14
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_3StXEE11is_variadicEv
Line
Count
Source
77
6
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_3StYEE11is_variadicEv
Line
Count
Source
77
6
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_16StDistanceSphereEE11is_variadicEv
Line
Count
Source
77
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE11is_variadicEv
Line
Count
Source
77
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_7StAngleEE11is_variadicEv
Line
Count
Source
77
26
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE11is_variadicEv
Line
Count
Source
77
39
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE11is_variadicEv
Line
Count
Source
77
130
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE11is_variadicEv
Line
Count
Source
77
173
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE11is_variadicEv
Line
Count
Source
77
141
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE11is_variadicEv
Line
Count
Source
77
171
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE11is_variadicEv
Line
Count
Source
77
95
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE11is_variadicEv
Line
Count
Source
77
78
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE11is_variadicEv
Line
Count
Source
77
61
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_8StCircleEE11is_variadicEv
Line
Count
Source
77
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE11is_variadicEv
Line
Count
Source
77
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE11is_variadicEv
Line
Count
Source
77
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE11is_variadicEv
Line
Count
Source
77
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE11is_variadicEv
Line
Count
Source
77
1
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE11is_variadicEv
Line
Count
Source
77
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE11is_variadicEv
Line
Count
Source
77
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE11is_variadicEv
Line
Count
Source
77
1
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StAreaSquareMetersEE11is_variadicEv
Line
Count
Source
77
33
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_14StAreaSquareKmEE11is_variadicEv
Line
Count
Source
77
23
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_10StAsBinaryEE11is_variadicEv
Line
Count
Source
77
18
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_8StLengthEE11is_variadicEv
Line
Count
Source
77
14
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE11is_variadicEv
Line
Count
Source
77
4
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb0EEEE11is_variadicEv
Line
Count
Source
77
55
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb1EEEE11is_variadicEv
Line
Count
Source
77
31
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_10StIsClosedEE11is_variadicEv
Line
Count
Source
77
8
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_15StNumGeometriesEE11is_variadicEv
Line
Count
Source
77
6
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_11StNumPointsEE11is_variadicEv
Line
Count
Source
77
6
    bool is_variadic() const override { return false; }
78
1.11k
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
1.11k
        return make_nullable(std::make_shared<ReturnType>());
80
1.11k
    }
_ZNK5doris11GeoFunctionINS_7StPointEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
7
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
7
        return make_nullable(std::make_shared<ReturnType>());
80
7
    }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
78
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
1
        return make_nullable(std::make_shared<ReturnType>());
80
1
    }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
78
13
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
13
        return make_nullable(std::make_shared<ReturnType>());
80
13
    }
_ZNK5doris11GeoFunctionINS_3StXEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
5
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
5
        return make_nullable(std::make_shared<ReturnType>());
80
5
    }
_ZNK5doris11GeoFunctionINS_3StYEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
5
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
5
        return make_nullable(std::make_shared<ReturnType>());
80
5
    }
_ZNK5doris11GeoFunctionINS_16StDistanceSphereEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
1
        return make_nullable(std::make_shared<ReturnType>());
80
1
    }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
1
        return make_nullable(std::make_shared<ReturnType>());
80
1
    }
_ZNK5doris11GeoFunctionINS_7StAngleEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
25
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
25
        return make_nullable(std::make_shared<ReturnType>());
80
25
    }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
38
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
38
        return make_nullable(std::make_shared<ReturnType>());
80
38
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
78
129
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
129
        return make_nullable(std::make_shared<ReturnType>());
80
129
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
78
172
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
172
        return make_nullable(std::make_shared<ReturnType>());
80
172
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
78
140
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
140
        return make_nullable(std::make_shared<ReturnType>());
80
140
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
78
170
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
170
        return make_nullable(std::make_shared<ReturnType>());
80
170
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
78
94
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
94
        return make_nullable(std::make_shared<ReturnType>());
80
94
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
78
77
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
77
        return make_nullable(std::make_shared<ReturnType>());
80
77
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
78
60
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
60
        return make_nullable(std::make_shared<ReturnType>());
80
60
    }
_ZNK5doris11GeoFunctionINS_8StCircleEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
1
        return make_nullable(std::make_shared<ReturnType>());
80
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
78
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
1
        return make_nullable(std::make_shared<ReturnType>());
80
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
78
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
1
        return make_nullable(std::make_shared<ReturnType>());
80
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
78
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
1
        return make_nullable(std::make_shared<ReturnType>());
80
1
    }
Unexecuted instantiation: _ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
78
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
1
        return make_nullable(std::make_shared<ReturnType>());
80
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
78
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
1
        return make_nullable(std::make_shared<ReturnType>());
80
1
    }
Unexecuted instantiation: _ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZNK5doris11GeoFunctionINS_18StAreaSquareMetersEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
32
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
32
        return make_nullable(std::make_shared<ReturnType>());
80
32
    }
_ZNK5doris11GeoFunctionINS_14StAreaSquareKmEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
22
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
22
        return make_nullable(std::make_shared<ReturnType>());
80
22
    }
Unexecuted instantiation: _ZNK5doris11GeoFunctionINS_10StAsBinaryEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
_ZNK5doris11GeoFunctionINS_8StLengthEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
13
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
13
        return make_nullable(std::make_shared<ReturnType>());
80
13
    }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
3
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
3
        return make_nullable(std::make_shared<ReturnType>());
80
3
    }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb0EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS8_EE
Line
Count
Source
78
54
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
54
        return make_nullable(std::make_shared<ReturnType>());
80
54
    }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb1EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS8_EE
Line
Count
Source
78
30
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
30
        return make_nullable(std::make_shared<ReturnType>());
80
30
    }
_ZNK5doris11GeoFunctionINS_10StIsClosedEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
7
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
7
        return make_nullable(std::make_shared<ReturnType>());
80
7
    }
_ZNK5doris11GeoFunctionINS_15StNumGeometriesEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
5
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
5
        return make_nullable(std::make_shared<ReturnType>());
80
5
    }
_ZNK5doris11GeoFunctionINS_11StNumPointsEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
78
5
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
79
5
        return make_nullable(std::make_shared<ReturnType>());
80
5
    }
81
82
    Status execute_impl(FunctionContext* context, Block& block, const ColumnNumbers& arguments,
83
1.11k
                        uint32_t result, size_t input_rows_count) const override {
84
1.11k
        return Impl::execute(block, arguments, result);
85
1.11k
    }
_ZNK5doris11GeoFunctionINS_7StPointEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
3
                        uint32_t result, size_t input_rows_count) const override {
84
3
        return Impl::execute(block, arguments, result);
85
3
    }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
1
                        uint32_t result, size_t input_rows_count) const override {
84
1
        return Impl::execute(block, arguments, result);
85
1
    }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
7
                        uint32_t result, size_t input_rows_count) const override {
84
7
        return Impl::execute(block, arguments, result);
85
7
    }
_ZNK5doris11GeoFunctionINS_3StXEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
5
                        uint32_t result, size_t input_rows_count) const override {
84
5
        return Impl::execute(block, arguments, result);
85
5
    }
_ZNK5doris11GeoFunctionINS_3StYEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
5
                        uint32_t result, size_t input_rows_count) const override {
84
5
        return Impl::execute(block, arguments, result);
85
5
    }
_ZNK5doris11GeoFunctionINS_16StDistanceSphereEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
1
                        uint32_t result, size_t input_rows_count) const override {
84
1
        return Impl::execute(block, arguments, result);
85
1
    }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
1
                        uint32_t result, size_t input_rows_count) const override {
84
1
        return Impl::execute(block, arguments, result);
85
1
    }
_ZNK5doris11GeoFunctionINS_7StAngleEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
25
                        uint32_t result, size_t input_rows_count) const override {
84
25
        return Impl::execute(block, arguments, result);
85
25
    }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
38
                        uint32_t result, size_t input_rows_count) const override {
84
38
        return Impl::execute(block, arguments, result);
85
38
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
129
                        uint32_t result, size_t input_rows_count) const override {
84
129
        return Impl::execute(block, arguments, result);
85
129
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
172
                        uint32_t result, size_t input_rows_count) const override {
84
172
        return Impl::execute(block, arguments, result);
85
172
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
140
                        uint32_t result, size_t input_rows_count) const override {
84
140
        return Impl::execute(block, arguments, result);
85
140
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
170
                        uint32_t result, size_t input_rows_count) const override {
84
170
        return Impl::execute(block, arguments, result);
85
170
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
94
                        uint32_t result, size_t input_rows_count) const override {
84
94
        return Impl::execute(block, arguments, result);
85
94
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
77
                        uint32_t result, size_t input_rows_count) const override {
84
77
        return Impl::execute(block, arguments, result);
85
77
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
60
                        uint32_t result, size_t input_rows_count) const override {
84
60
        return Impl::execute(block, arguments, result);
85
60
    }
_ZNK5doris11GeoFunctionINS_8StCircleEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
1
                        uint32_t result, size_t input_rows_count) const override {
84
1
        return Impl::execute(block, arguments, result);
85
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
1
                        uint32_t result, size_t input_rows_count) const override {
84
1
        return Impl::execute(block, arguments, result);
85
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
1
                        uint32_t result, size_t input_rows_count) const override {
84
1
        return Impl::execute(block, arguments, result);
85
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
1
                        uint32_t result, size_t input_rows_count) const override {
84
1
        return Impl::execute(block, arguments, result);
85
1
    }
Unexecuted instantiation: _ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
1
                        uint32_t result, size_t input_rows_count) const override {
84
1
        return Impl::execute(block, arguments, result);
85
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
1
                        uint32_t result, size_t input_rows_count) const override {
84
1
        return Impl::execute(block, arguments, result);
85
1
    }
Unexecuted instantiation: _ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris11GeoFunctionINS_18StAreaSquareMetersEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
30
                        uint32_t result, size_t input_rows_count) const override {
84
30
        return Impl::execute(block, arguments, result);
85
30
    }
_ZNK5doris11GeoFunctionINS_14StAreaSquareKmEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
21
                        uint32_t result, size_t input_rows_count) const override {
84
21
        return Impl::execute(block, arguments, result);
85
21
    }
_ZNK5doris11GeoFunctionINS_10StAsBinaryEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
17
                        uint32_t result, size_t input_rows_count) const override {
84
17
        return Impl::execute(block, arguments, result);
85
17
    }
_ZNK5doris11GeoFunctionINS_8StLengthEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
12
                        uint32_t result, size_t input_rows_count) const override {
84
12
        return Impl::execute(block, arguments, result);
85
12
    }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
3
                        uint32_t result, size_t input_rows_count) const override {
84
3
        return Impl::execute(block, arguments, result);
85
3
    }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb0EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
53
                        uint32_t result, size_t input_rows_count) const override {
84
53
        return Impl::execute(block, arguments, result);
85
53
    }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb1EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
30
                        uint32_t result, size_t input_rows_count) const override {
84
30
        return Impl::execute(block, arguments, result);
85
30
    }
_ZNK5doris11GeoFunctionINS_10StIsClosedEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
6
                        uint32_t result, size_t input_rows_count) const override {
84
6
        return Impl::execute(block, arguments, result);
85
6
    }
_ZNK5doris11GeoFunctionINS_15StNumGeometriesEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
5
                        uint32_t result, size_t input_rows_count) const override {
84
5
        return Impl::execute(block, arguments, result);
85
5
    }
_ZNK5doris11GeoFunctionINS_11StNumPointsEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
83
5
                        uint32_t result, size_t input_rows_count) const override {
84
5
        return Impl::execute(block, arguments, result);
85
5
    }
86
};
87
88
// Spatial WKB columns must remain visible to the implementation so it can validate the
89
// serialized value before any file data is consumed.  Do not use this wrapper for legacy
90
// geo functions or numeric constructors: their nullable arguments rely on the default
91
// null propagation supplied by IFunction.
92
template <typename Impl>
93
class SpatialWkbGeoFunction : public GeoFunction<Impl> {
94
public:
95
1.12k
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE6createEv
Line
Count
Source
95
3
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE6createEv
Line
Count
Source
95
15
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_3StXEE6createEv
Line
Count
Source
95
7
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_3StYEE6createEv
Line
Count
Source
95
7
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_7StAngleEE6createEv
Line
Count
Source
95
27
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_9StAzimuthEE6createEv
Line
Count
Source
95
40
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE6createEv
Line
Count
Source
95
131
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE6createEv
Line
Count
Source
95
174
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE6createEv
Line
Count
Source
95
142
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE6createEv
Line
Count
Source
95
172
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE6createEv
Line
Count
Source
95
96
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE6createEv
Line
Count
Source
95
79
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE6createEv
Line
Count
Source
95
62
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StAreaSquareMetersEE6createEv
Line
Count
Source
95
34
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_14StAreaSquareKmEE6createEv
Line
Count
Source
95
24
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_8StLengthEE6createEv
Line
Count
Source
95
15
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_14StGeometryTypeEE6createEv
Line
Count
Source
95
5
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StDistanceFunctionILb0EEEE6createEv
Line
Count
Source
95
56
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StDistanceFunctionILb1EEEE6createEv
Line
Count
Source
95
32
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
96
2.20k
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
2
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
26
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_3StXEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
10
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_3StYEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
10
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_7StAngleEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
50
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_9StAzimuthEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
76
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
258
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
344
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
280
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
340
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
188
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
154
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
120
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StAreaSquareMetersEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
64
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_14StAreaSquareKmEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
44
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_10StAsBinaryEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
34
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_8StLengthEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
26
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_14StGeometryTypeEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
6
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StDistanceFunctionILb0EEEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
108
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StDistanceFunctionILb1EEEE36use_default_implementation_for_nullsEv
Line
Count
Source
96
60
    bool use_default_implementation_for_nulls() const override { return false; }
97
98
    Status execute_impl(FunctionContext* context, Block& block, const ColumnNumbers& arguments,
99
1.10k
                        uint32_t result, size_t input_rows_count) const override {
100
1.10k
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
1.08k
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
1.10k
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
1
                        uint32_t result, size_t input_rows_count) const override {
100
1
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
1
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
1
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
13
                        uint32_t result, size_t input_rows_count) const override {
100
13
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
7
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
13
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_3StXEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
5
                        uint32_t result, size_t input_rows_count) const override {
100
5
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
5
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
5
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_3StYEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
5
                        uint32_t result, size_t input_rows_count) const override {
100
5
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
5
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
5
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_7StAngleEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
25
                        uint32_t result, size_t input_rows_count) const override {
100
25
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
25
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
25
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_9StAzimuthEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
38
                        uint32_t result, size_t input_rows_count) const override {
100
38
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
38
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
38
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
129
                        uint32_t result, size_t input_rows_count) const override {
100
129
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
129
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
129
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
172
                        uint32_t result, size_t input_rows_count) const override {
100
172
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
172
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
172
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
140
                        uint32_t result, size_t input_rows_count) const override {
100
140
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
140
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
140
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
170
                        uint32_t result, size_t input_rows_count) const override {
100
170
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
170
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
170
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
94
                        uint32_t result, size_t input_rows_count) const override {
100
94
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
94
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
94
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
77
                        uint32_t result, size_t input_rows_count) const override {
100
77
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
77
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
77
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
60
                        uint32_t result, size_t input_rows_count) const override {
100
60
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
60
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
60
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StAreaSquareMetersEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
32
                        uint32_t result, size_t input_rows_count) const override {
100
32
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
30
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
32
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_14StAreaSquareKmEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
22
                        uint32_t result, size_t input_rows_count) const override {
100
22
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
21
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
22
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_10StAsBinaryEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
17
                        uint32_t result, size_t input_rows_count) const override {
100
17
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
17
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
17
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_8StLengthEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
13
                        uint32_t result, size_t input_rows_count) const override {
100
13
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
12
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
13
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_14StGeometryTypeEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
3
                        uint32_t result, size_t input_rows_count) const override {
100
3
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
3
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
3
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StDistanceFunctionILb0EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
54
                        uint32_t result, size_t input_rows_count) const override {
100
54
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
53
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
54
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StDistanceFunctionILb1EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
99
30
                        uint32_t result, size_t input_rows_count) const override {
100
30
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
101
30
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
102
30
    }
103
};
104
105
} // namespace doris