Coverage Report

Created: 2026-03-13 21:11

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
template <typename Impl>
57
class GeoFunction : public IFunction {
58
public:
59
    static constexpr auto name = Impl::NAME;
60
    using ReturnType = typename Impl::Type;
61
1.72k
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_7StPointEE6createEv
Line
Count
Source
61
208
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE6createEv
Line
Count
Source
61
14
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE6createEv
Line
Count
Source
61
83
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_3StXEE6createEv
Line
Count
Source
61
18
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_3StYEE6createEv
Line
Count
Source
61
17
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_16StDistanceSphereEE6createEv
Line
Count
Source
61
15
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StAngleSphereEE6createEv
Line
Count
Source
61
17
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_7StAngleEE6createEv
Line
Count
Source
61
19
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_9StAzimuthEE6createEv
Line
Count
Source
61
25
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE6createEv
Line
Count
Source
61
78
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE6createEv
Line
Count
Source
61
102
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE6createEv
Line
Count
Source
61
64
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE6createEv
Line
Count
Source
61
109
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_8StCircleEE6createEv
Line
Count
Source
61
144
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE6createEv
Line
Count
Source
61
173
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE6createEv
Line
Count
Source
61
135
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE6createEv
Line
Count
Source
61
122
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE6createEv
Line
Count
Source
61
13
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE6createEv
Line
Count
Source
61
147
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE6createEv
Line
Count
Source
61
14
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE6createEv
Line
Count
Source
61
17
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_18StAreaSquareMetersEE6createEv
Line
Count
Source
61
18
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_14StAreaSquareKmEE6createEv
Line
Count
Source
61
18
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_12StGeoFromWkbINS_17StGeometryFromWKBEEEE6createEv
Line
Count
Source
61
20
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_12StGeoFromWkbINS_13StGeomFromWKBEEEE6createEv
Line
Count
Source
61
19
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_10StAsBinaryEE6createEv
Line
Count
Source
61
29
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_8StLengthEE6createEv
Line
Count
Source
61
21
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_14StGeometryTypeEE6createEv
Line
Count
Source
61
16
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_10StDistanceEE6createEv
Line
Count
Source
61
53
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
62
29
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_7StPointEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_3StXEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_3StYEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_16StDistanceSphereEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_7StAngleEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_8StCircleEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StAreaSquareMetersEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_14StAreaSquareKmEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_12StGeoFromWkbINS_17StGeometryFromWKBEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_12StGeoFromWkbINS_13StGeomFromWKBEEEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_10StAsBinaryEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_8StLengthEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_10StDistanceEE8get_nameB5cxx11Ev
Line
Count
Source
62
1
    String get_name() const override { return name; }
63
1.46k
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_7StPointEE23get_number_of_argumentsEv
Line
Count
Source
63
199
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE23get_number_of_argumentsEv
Line
Count
Source
63
5
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE23get_number_of_argumentsEv
Line
Count
Source
63
74
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_3StXEE23get_number_of_argumentsEv
Line
Count
Source
63
9
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_3StYEE23get_number_of_argumentsEv
Line
Count
Source
63
8
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_16StDistanceSphereEE23get_number_of_argumentsEv
Line
Count
Source
63
6
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE23get_number_of_argumentsEv
Line
Count
Source
63
8
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_7StAngleEE23get_number_of_argumentsEv
Line
Count
Source
63
10
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE23get_number_of_argumentsEv
Line
Count
Source
63
16
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
63
69
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
63
93
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
63
55
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
63
100
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_8StCircleEE23get_number_of_argumentsEv
Line
Count
Source
63
135
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE23get_number_of_argumentsEv
Line
Count
Source
63
164
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE23get_number_of_argumentsEv
Line
Count
Source
63
126
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE23get_number_of_argumentsEv
Line
Count
Source
63
113
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE23get_number_of_argumentsEv
Line
Count
Source
63
4
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE23get_number_of_argumentsEv
Line
Count
Source
63
138
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE23get_number_of_argumentsEv
Line
Count
Source
63
5
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE23get_number_of_argumentsEv
Line
Count
Source
63
8
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StAreaSquareMetersEE23get_number_of_argumentsEv
Line
Count
Source
63
9
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_14StAreaSquareKmEE23get_number_of_argumentsEv
Line
Count
Source
63
9
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_12StGeoFromWkbINS_17StGeometryFromWKBEEEE23get_number_of_argumentsEv
Line
Count
Source
63
11
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_12StGeoFromWkbINS_13StGeomFromWKBEEEE23get_number_of_argumentsEv
Line
Count
Source
63
10
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_10StAsBinaryEE23get_number_of_argumentsEv
Line
Count
Source
63
20
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_8StLengthEE23get_number_of_argumentsEv
Line
Count
Source
63
12
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE23get_number_of_argumentsEv
Line
Count
Source
63
7
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_10StDistanceEE23get_number_of_argumentsEv
Line
Count
Source
63
44
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
64
1.49k
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_7StPointEE11is_variadicEv
Line
Count
Source
64
200
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE11is_variadicEv
Line
Count
Source
64
6
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE11is_variadicEv
Line
Count
Source
64
75
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_3StXEE11is_variadicEv
Line
Count
Source
64
10
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_3StYEE11is_variadicEv
Line
Count
Source
64
9
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_16StDistanceSphereEE11is_variadicEv
Line
Count
Source
64
7
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE11is_variadicEv
Line
Count
Source
64
9
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_7StAngleEE11is_variadicEv
Line
Count
Source
64
11
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE11is_variadicEv
Line
Count
Source
64
17
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE11is_variadicEv
Line
Count
Source
64
70
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE11is_variadicEv
Line
Count
Source
64
94
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE11is_variadicEv
Line
Count
Source
64
56
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE11is_variadicEv
Line
Count
Source
64
101
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_8StCircleEE11is_variadicEv
Line
Count
Source
64
136
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE11is_variadicEv
Line
Count
Source
64
165
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE11is_variadicEv
Line
Count
Source
64
127
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE11is_variadicEv
Line
Count
Source
64
114
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE11is_variadicEv
Line
Count
Source
64
5
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE11is_variadicEv
Line
Count
Source
64
139
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE11is_variadicEv
Line
Count
Source
64
6
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE11is_variadicEv
Line
Count
Source
64
9
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StAreaSquareMetersEE11is_variadicEv
Line
Count
Source
64
10
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_14StAreaSquareKmEE11is_variadicEv
Line
Count
Source
64
10
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_12StGeoFromWkbINS_17StGeometryFromWKBEEEE11is_variadicEv
Line
Count
Source
64
12
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_12StGeoFromWkbINS_13StGeomFromWKBEEEE11is_variadicEv
Line
Count
Source
64
11
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_10StAsBinaryEE11is_variadicEv
Line
Count
Source
64
21
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_8StLengthEE11is_variadicEv
Line
Count
Source
64
13
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE11is_variadicEv
Line
Count
Source
64
8
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_10StDistanceEE11is_variadicEv
Line
Count
Source
64
45
    bool is_variadic() const override { return false; }
65
66
1.46k
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
1.46k
        return make_nullable(std::make_shared<ReturnType>());
68
1.46k
    }
_ZNK5doris11GeoFunctionINS_7StPointEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
199
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
199
        return make_nullable(std::make_shared<ReturnType>());
68
199
    }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
5
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
5
        return make_nullable(std::make_shared<ReturnType>());
68
5
    }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
74
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
74
        return make_nullable(std::make_shared<ReturnType>());
68
74
    }
_ZNK5doris11GeoFunctionINS_3StXEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
9
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
9
        return make_nullable(std::make_shared<ReturnType>());
68
9
    }
_ZNK5doris11GeoFunctionINS_3StYEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
8
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
8
        return make_nullable(std::make_shared<ReturnType>());
68
8
    }
_ZNK5doris11GeoFunctionINS_16StDistanceSphereEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
6
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
6
        return make_nullable(std::make_shared<ReturnType>());
68
6
    }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
8
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
8
        return make_nullable(std::make_shared<ReturnType>());
68
8
    }
_ZNK5doris11GeoFunctionINS_7StAngleEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
10
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
10
        return make_nullable(std::make_shared<ReturnType>());
68
10
    }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
16
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
16
        return make_nullable(std::make_shared<ReturnType>());
68
16
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
69
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
69
        return make_nullable(std::make_shared<ReturnType>());
68
69
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
93
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
93
        return make_nullable(std::make_shared<ReturnType>());
68
93
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
55
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
55
        return make_nullable(std::make_shared<ReturnType>());
68
55
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
100
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
100
        return make_nullable(std::make_shared<ReturnType>());
68
100
    }
_ZNK5doris11GeoFunctionINS_8StCircleEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
135
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
135
        return make_nullable(std::make_shared<ReturnType>());
68
135
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
164
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
164
        return make_nullable(std::make_shared<ReturnType>());
68
164
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
126
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
126
        return make_nullable(std::make_shared<ReturnType>());
68
126
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
113
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
113
        return make_nullable(std::make_shared<ReturnType>());
68
113
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
4
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
4
        return make_nullable(std::make_shared<ReturnType>());
68
4
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
138
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
138
        return make_nullable(std::make_shared<ReturnType>());
68
138
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
5
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
5
        return make_nullable(std::make_shared<ReturnType>());
68
5
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
8
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
8
        return make_nullable(std::make_shared<ReturnType>());
68
8
    }
_ZNK5doris11GeoFunctionINS_18StAreaSquareMetersEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
9
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
9
        return make_nullable(std::make_shared<ReturnType>());
68
9
    }
_ZNK5doris11GeoFunctionINS_14StAreaSquareKmEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
9
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
9
        return make_nullable(std::make_shared<ReturnType>());
68
9
    }
_ZNK5doris11GeoFunctionINS_12StGeoFromWkbINS_17StGeometryFromWKBEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
11
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
11
        return make_nullable(std::make_shared<ReturnType>());
68
11
    }
_ZNK5doris11GeoFunctionINS_12StGeoFromWkbINS_13StGeomFromWKBEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
10
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
10
        return make_nullable(std::make_shared<ReturnType>());
68
10
    }
_ZNK5doris11GeoFunctionINS_10StAsBinaryEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
20
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
20
        return make_nullable(std::make_shared<ReturnType>());
68
20
    }
_ZNK5doris11GeoFunctionINS_8StLengthEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
12
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
12
        return make_nullable(std::make_shared<ReturnType>());
68
12
    }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
7
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
7
        return make_nullable(std::make_shared<ReturnType>());
68
7
    }
_ZNK5doris11GeoFunctionINS_10StDistanceEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
44
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
44
        return make_nullable(std::make_shared<ReturnType>());
68
44
    }
69
70
    Status execute_impl(FunctionContext* context, Block& block, const ColumnNumbers& arguments,
71
1.77k
                        uint32_t result, size_t input_rows_count) const override {
72
1.77k
        return Impl::execute(block, arguments, result);
73
1.77k
    }
_ZNK5doris11GeoFunctionINS_7StPointEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
245
                        uint32_t result, size_t input_rows_count) const override {
72
245
        return Impl::execute(block, arguments, result);
73
245
    }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
11
                        uint32_t result, size_t input_rows_count) const override {
72
11
        return Impl::execute(block, arguments, result);
73
11
    }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
136
                        uint32_t result, size_t input_rows_count) const override {
72
136
        return Impl::execute(block, arguments, result);
73
136
    }
_ZNK5doris11GeoFunctionINS_3StXEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
15
                        uint32_t result, size_t input_rows_count) const override {
72
15
        return Impl::execute(block, arguments, result);
73
15
    }
_ZNK5doris11GeoFunctionINS_3StYEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
14
                        uint32_t result, size_t input_rows_count) const override {
72
14
        return Impl::execute(block, arguments, result);
73
14
    }
_ZNK5doris11GeoFunctionINS_16StDistanceSphereEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
12
                        uint32_t result, size_t input_rows_count) const override {
72
12
        return Impl::execute(block, arguments, result);
73
12
    }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
14
                        uint32_t result, size_t input_rows_count) const override {
72
14
        return Impl::execute(block, arguments, result);
73
14
    }
_ZNK5doris11GeoFunctionINS_7StAngleEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
13
                        uint32_t result, size_t input_rows_count) const override {
72
13
        return Impl::execute(block, arguments, result);
73
13
    }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
15
                        uint32_t result, size_t input_rows_count) const override {
72
15
        return Impl::execute(block, arguments, result);
73
15
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
71
                        uint32_t result, size_t input_rows_count) const override {
72
71
        return Impl::execute(block, arguments, result);
73
71
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
93
                        uint32_t result, size_t input_rows_count) const override {
72
93
        return Impl::execute(block, arguments, result);
73
93
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
55
                        uint32_t result, size_t input_rows_count) const override {
72
55
        return Impl::execute(block, arguments, result);
73
55
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
100
                        uint32_t result, size_t input_rows_count) const override {
72
100
        return Impl::execute(block, arguments, result);
73
100
    }
_ZNK5doris11GeoFunctionINS_8StCircleEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
153
                        uint32_t result, size_t input_rows_count) const override {
72
153
        return Impl::execute(block, arguments, result);
73
153
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
170
                        uint32_t result, size_t input_rows_count) const override {
72
170
        return Impl::execute(block, arguments, result);
73
170
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
144
                        uint32_t result, size_t input_rows_count) const override {
72
144
        return Impl::execute(block, arguments, result);
73
144
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
119
                        uint32_t result, size_t input_rows_count) const override {
72
119
        return Impl::execute(block, arguments, result);
73
119
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
10
                        uint32_t result, size_t input_rows_count) const override {
72
10
        return Impl::execute(block, arguments, result);
73
10
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
162
                        uint32_t result, size_t input_rows_count) const override {
72
162
        return Impl::execute(block, arguments, result);
73
162
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
11
                        uint32_t result, size_t input_rows_count) const override {
72
11
        return Impl::execute(block, arguments, result);
73
11
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
26
                        uint32_t result, size_t input_rows_count) const override {
72
26
        return Impl::execute(block, arguments, result);
73
26
    }
_ZNK5doris11GeoFunctionINS_18StAreaSquareMetersEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
21
                        uint32_t result, size_t input_rows_count) const override {
72
21
        return Impl::execute(block, arguments, result);
73
21
    }
_ZNK5doris11GeoFunctionINS_14StAreaSquareKmEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
21
                        uint32_t result, size_t input_rows_count) const override {
72
21
        return Impl::execute(block, arguments, result);
73
21
    }
_ZNK5doris11GeoFunctionINS_12StGeoFromWkbINS_17StGeometryFromWKBEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
17
                        uint32_t result, size_t input_rows_count) const override {
72
17
        return Impl::execute(block, arguments, result);
73
17
    }
_ZNK5doris11GeoFunctionINS_12StGeoFromWkbINS_13StGeomFromWKBEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
14
                        uint32_t result, size_t input_rows_count) const override {
72
14
        return Impl::execute(block, arguments, result);
73
14
    }
_ZNK5doris11GeoFunctionINS_10StAsBinaryEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
37
                        uint32_t result, size_t input_rows_count) const override {
72
37
        return Impl::execute(block, arguments, result);
73
37
    }
_ZNK5doris11GeoFunctionINS_8StLengthEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
15
                        uint32_t result, size_t input_rows_count) const override {
72
15
        return Impl::execute(block, arguments, result);
73
15
    }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
10
                        uint32_t result, size_t input_rows_count) const override {
72
10
        return Impl::execute(block, arguments, result);
73
10
    }
_ZNK5doris11GeoFunctionINS_10StDistanceEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
47
                        uint32_t result, size_t input_rows_count) const override {
72
47
        return Impl::execute(block, arguments, result);
73
47
    }
74
};
75
76
} // namespace doris