Coverage Report

Created: 2026-11-01 05: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/geo/spatial_wkb_validation.h"
32
#include "exprs/function_context.h"
33
34
namespace doris {
35
class GeoShape;
36
37
class Block;
38
} // namespace doris
39
40
namespace doris {
41
42
struct StConstructState {
43
0
    StConstructState() : is_null(false) {}
44
0
    ~StConstructState() {}
45
46
    bool is_null;
47
    std::string encoded_buf;
48
};
49
50
struct StContainsState {
51
0
    StContainsState() : is_null(false), shapes {nullptr, nullptr} {}
52
0
    ~StContainsState() {}
53
    bool is_null;
54
    std::vector<std::shared_ptr<GeoShape>> shapes;
55
};
56
57
template <typename Impl>
58
class GeoFunction : public IFunction {
59
public:
60
    static constexpr auto name = Impl::NAME;
61
    using ReturnType = typename Impl::Type;
62
60
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_7StPointEE6createEv
Line
Count
Source
62
9
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_16StDistanceSphereEE6createEv
Line
Count
Source
62
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StAngleSphereEE6createEv
Line
Count
Source
62
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_8StCircleEE6createEv
Line
Count
Source
62
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE6createEv
Line
Count
Source
62
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE6createEv
Line
Count
Source
62
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE6createEv
Line
Count
Source
62
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE6createEv
Line
Count
Source
62
2
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE6createEv
Line
Count
Source
62
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE6createEv
Line
Count
Source
62
3
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE6createEv
Line
Count
Source
62
2
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_10StIsClosedEE6createEv
Line
Count
Source
62
9
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_15StNumGeometriesEE6createEv
Line
Count
Source
62
7
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
_ZN5doris11GeoFunctionINS_11StNumPointsEE6createEv
Line
Count
Source
62
7
    static FunctionPtr create() { return std::make_shared<GeoFunction<Impl>>(); }
63
34
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_7StPointEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_12StCoordinateILb1EEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_12StCoordinateILb0EEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_16StDistanceSphereEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_7StAngleEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_8StCircleEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_6StAreaILb1EEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_6StAreaILb0EEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_10StAsBinaryEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_8StLengthEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb0EEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb1EEEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_10StIsClosedEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_15StNumGeometriesEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
_ZNK5doris11GeoFunctionINS_11StNumPointsEE8get_nameB5cxx11Ev
Line
Count
Source
63
1
    String get_name() const override { return name; }
64
1.69k
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_7StPointEE23get_number_of_argumentsEv
Line
Count
Source
64
7
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE23get_number_of_argumentsEv
Line
Count
Source
64
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE23get_number_of_argumentsEv
Line
Count
Source
64
13
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_12StCoordinateILb1EEEE23get_number_of_argumentsEv
Line
Count
Source
64
5
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_12StCoordinateILb0EEEE23get_number_of_argumentsEv
Line
Count
Source
64
5
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_16StDistanceSphereEE23get_number_of_argumentsEv
Line
Count
Source
64
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE23get_number_of_argumentsEv
Line
Count
Source
64
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_7StAngleEE23get_number_of_argumentsEv
Line
Count
Source
64
25
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE23get_number_of_argumentsEv
Line
Count
Source
64
38
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
64
177
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
64
255
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
64
212
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
64
251
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
64
131
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
64
110
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE23get_number_of_argumentsEv
Line
Count
Source
64
105
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_8StCircleEE23get_number_of_argumentsEv
Line
Count
Source
64
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE23get_number_of_argumentsEv
Line
Count
Source
64
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE23get_number_of_argumentsEv
Line
Count
Source
64
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE23get_number_of_argumentsEv
Line
Count
Source
64
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
64
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE23get_number_of_argumentsEv
Line
Count
Source
64
1
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
Unexecuted instantiation: _ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE23get_number_of_argumentsEv
_ZNK5doris11GeoFunctionINS_6StAreaILb1EEEE23get_number_of_argumentsEv
Line
Count
Source
64
32
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_6StAreaILb0EEEE23get_number_of_argumentsEv
Line
Count
Source
64
22
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_10StAsBinaryEE23get_number_of_argumentsEv
Line
Count
Source
64
17
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_8StLengthEE23get_number_of_argumentsEv
Line
Count
Source
64
17
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE23get_number_of_argumentsEv
Line
Count
Source
64
3
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb0EEEE23get_number_of_argumentsEv
Line
Count
Source
64
136
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb1EEEE23get_number_of_argumentsEv
Line
Count
Source
64
112
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_10StIsClosedEE23get_number_of_argumentsEv
Line
Count
Source
64
7
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_15StNumGeometriesEE23get_number_of_argumentsEv
Line
Count
Source
64
5
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
_ZNK5doris11GeoFunctionINS_11StNumPointsEE23get_number_of_argumentsEv
Line
Count
Source
64
5
    size_t get_number_of_arguments() const override { return Impl::NUM_ARGS; }
65
1.73k
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_7StPointEE11is_variadicEv
Line
Count
Source
65
8
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE11is_variadicEv
Line
Count
Source
65
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE11is_variadicEv
Line
Count
Source
65
14
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_12StCoordinateILb1EEEE11is_variadicEv
Line
Count
Source
65
6
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_12StCoordinateILb0EEEE11is_variadicEv
Line
Count
Source
65
6
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_16StDistanceSphereEE11is_variadicEv
Line
Count
Source
65
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE11is_variadicEv
Line
Count
Source
65
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_7StAngleEE11is_variadicEv
Line
Count
Source
65
26
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE11is_variadicEv
Line
Count
Source
65
39
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE11is_variadicEv
Line
Count
Source
65
178
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE11is_variadicEv
Line
Count
Source
65
256
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE11is_variadicEv
Line
Count
Source
65
213
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE11is_variadicEv
Line
Count
Source
65
252
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE11is_variadicEv
Line
Count
Source
65
132
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE11is_variadicEv
Line
Count
Source
65
111
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE11is_variadicEv
Line
Count
Source
65
106
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_8StCircleEE11is_variadicEv
Line
Count
Source
65
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE11is_variadicEv
Line
Count
Source
65
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE11is_variadicEv
Line
Count
Source
65
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE11is_variadicEv
Line
Count
Source
65
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE11is_variadicEv
Line
Count
Source
65
1
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE11is_variadicEv
Line
Count
Source
65
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE11is_variadicEv
Line
Count
Source
65
2
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE11is_variadicEv
Line
Count
Source
65
1
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_6StAreaILb1EEEE11is_variadicEv
Line
Count
Source
65
33
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_6StAreaILb0EEEE11is_variadicEv
Line
Count
Source
65
23
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_10StAsBinaryEE11is_variadicEv
Line
Count
Source
65
18
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_8StLengthEE11is_variadicEv
Line
Count
Source
65
18
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE11is_variadicEv
Line
Count
Source
65
4
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb0EEEE11is_variadicEv
Line
Count
Source
65
137
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb1EEEE11is_variadicEv
Line
Count
Source
65
113
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_10StIsClosedEE11is_variadicEv
Line
Count
Source
65
8
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_15StNumGeometriesEE11is_variadicEv
Line
Count
Source
65
6
    bool is_variadic() const override { return false; }
_ZNK5doris11GeoFunctionINS_11StNumPointsEE11is_variadicEv
Line
Count
Source
65
6
    bool is_variadic() const override { return false; }
66
1.68k
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
1.68k
        return make_nullable(std::make_shared<ReturnType>());
68
1.68k
    }
_ZNK5doris11GeoFunctionINS_7StPointEE20get_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_8StAsTextINS_11StAsWktNameEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
1
        return make_nullable(std::make_shared<ReturnType>());
68
1
    }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
13
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
13
        return make_nullable(std::make_shared<ReturnType>());
68
13
    }
_ZNK5doris11GeoFunctionINS_12StCoordinateILb1EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS8_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_12StCoordinateILb0EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS8_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_16StDistanceSphereEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
1
        return make_nullable(std::make_shared<ReturnType>());
68
1
    }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
1
        return make_nullable(std::make_shared<ReturnType>());
68
1
    }
_ZNK5doris11GeoFunctionINS_7StAngleEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
25
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
25
        return make_nullable(std::make_shared<ReturnType>());
68
25
    }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
38
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
38
        return make_nullable(std::make_shared<ReturnType>());
68
38
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
177
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
177
        return make_nullable(std::make_shared<ReturnType>());
68
177
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
255
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
255
        return make_nullable(std::make_shared<ReturnType>());
68
255
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
212
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
212
        return make_nullable(std::make_shared<ReturnType>());
68
212
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
251
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
251
        return make_nullable(std::make_shared<ReturnType>());
68
251
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
131
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
131
        return make_nullable(std::make_shared<ReturnType>());
68
131
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
110
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
110
        return make_nullable(std::make_shared<ReturnType>());
68
110
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
105
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
105
        return make_nullable(std::make_shared<ReturnType>());
68
105
    }
_ZNK5doris11GeoFunctionINS_8StCircleEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
1
        return make_nullable(std::make_shared<ReturnType>());
68
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
1
        return make_nullable(std::make_shared<ReturnType>());
68
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
1
        return make_nullable(std::make_shared<ReturnType>());
68
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
1
        return make_nullable(std::make_shared<ReturnType>());
68
1
    }
Unexecuted instantiation: _ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
1
        return make_nullable(std::make_shared<ReturnType>());
68
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
66
1
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
1
        return make_nullable(std::make_shared<ReturnType>());
68
1
    }
Unexecuted instantiation: _ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZNK5doris11GeoFunctionINS_6StAreaILb1EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS8_EE
Line
Count
Source
66
32
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
32
        return make_nullable(std::make_shared<ReturnType>());
68
32
    }
_ZNK5doris11GeoFunctionINS_6StAreaILb0EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS8_EE
Line
Count
Source
66
22
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
22
        return make_nullable(std::make_shared<ReturnType>());
68
22
    }
Unexecuted instantiation: _ZNK5doris11GeoFunctionINS_10StAsBinaryEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
_ZNK5doris11GeoFunctionINS_8StLengthEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
17
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
17
        return make_nullable(std::make_shared<ReturnType>());
68
17
    }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_EE
Line
Count
Source
66
3
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
3
        return make_nullable(std::make_shared<ReturnType>());
68
3
    }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb0EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS8_EE
Line
Count
Source
66
136
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
136
        return make_nullable(std::make_shared<ReturnType>());
68
136
    }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb1EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS8_EE
Line
Count
Source
66
112
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
67
112
        return make_nullable(std::make_shared<ReturnType>());
68
112
    }
_ZNK5doris11GeoFunctionINS_10StIsClosedEE20get_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_15StNumGeometriesEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_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_11StNumPointsEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS7_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
    }
69
70
    Status execute_impl(FunctionContext* context, Block& block, const ColumnNumbers& arguments,
71
1.68k
                        uint32_t result, size_t input_rows_count) const override {
72
1.68k
        return Impl::execute(block, arguments, result);
73
1.68k
    }
_ZNK5doris11GeoFunctionINS_7StPointEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
3
                        uint32_t result, size_t input_rows_count) const override {
72
3
        return Impl::execute(block, arguments, result);
73
3
    }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
1
                        uint32_t result, size_t input_rows_count) const override {
72
1
        return Impl::execute(block, arguments, result);
73
1
    }
_ZNK5doris11GeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
7
                        uint32_t result, size_t input_rows_count) const override {
72
7
        return Impl::execute(block, arguments, result);
73
7
    }
_ZNK5doris11GeoFunctionINS_12StCoordinateILb1EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
5
                        uint32_t result, size_t input_rows_count) const override {
72
5
        return Impl::execute(block, arguments, result);
73
5
    }
_ZNK5doris11GeoFunctionINS_12StCoordinateILb0EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
5
                        uint32_t result, size_t input_rows_count) const override {
72
5
        return Impl::execute(block, arguments, result);
73
5
    }
_ZNK5doris11GeoFunctionINS_16StDistanceSphereEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
1
                        uint32_t result, size_t input_rows_count) const override {
72
1
        return Impl::execute(block, arguments, result);
73
1
    }
_ZNK5doris11GeoFunctionINS_13StAngleSphereEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
1
                        uint32_t result, size_t input_rows_count) const override {
72
1
        return Impl::execute(block, arguments, result);
73
1
    }
_ZNK5doris11GeoFunctionINS_7StAngleEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
25
                        uint32_t result, size_t input_rows_count) const override {
72
25
        return Impl::execute(block, arguments, result);
73
25
    }
_ZNK5doris11GeoFunctionINS_9StAzimuthEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
38
                        uint32_t result, size_t input_rows_count) const override {
72
38
        return Impl::execute(block, arguments, result);
73
38
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
177
                        uint32_t result, size_t input_rows_count) const override {
72
177
        return Impl::execute(block, arguments, result);
73
177
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
255
                        uint32_t result, size_t input_rows_count) const override {
72
255
        return Impl::execute(block, arguments, result);
73
255
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
212
                        uint32_t result, size_t input_rows_count) const override {
72
212
        return Impl::execute(block, arguments, result);
73
212
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
251
                        uint32_t result, size_t input_rows_count) const override {
72
251
        return Impl::execute(block, arguments, result);
73
251
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
131
                        uint32_t result, size_t input_rows_count) const override {
72
131
        return Impl::execute(block, arguments, result);
73
131
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
110
                        uint32_t result, size_t input_rows_count) const override {
72
110
        return Impl::execute(block, arguments, result);
73
110
    }
_ZNK5doris11GeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
105
                        uint32_t result, size_t input_rows_count) const override {
72
105
        return Impl::execute(block, arguments, result);
73
105
    }
_ZNK5doris11GeoFunctionINS_8StCircleEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
1
                        uint32_t result, size_t input_rows_count) const override {
72
1
        return Impl::execute(block, arguments, result);
73
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_18StGeometryFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
1
                        uint32_t result, size_t input_rows_count) const override {
72
1
        return Impl::execute(block, arguments, result);
73
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StGeomFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
1
                        uint32_t result, size_t input_rows_count) const override {
72
1
        return Impl::execute(block, arguments, result);
73
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StLineFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
1
                        uint32_t result, size_t input_rows_count) const override {
72
1
        return Impl::execute(block, arguments, result);
73
1
    }
Unexecuted instantiation: _ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_20StLineStringFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_9StPolygonEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
1
                        uint32_t result, size_t input_rows_count) const override {
72
1
        return Impl::execute(block, arguments, result);
73
1
    }
_ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_17StPolygonFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
1
                        uint32_t result, size_t input_rows_count) const override {
72
1
        return Impl::execute(block, arguments, result);
73
1
    }
Unexecuted instantiation: _ZNK5doris11GeoFunctionINS_13StGeoFromTextINS_14StPolyFromTextEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris11GeoFunctionINS_6StAreaILb1EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
30
                        uint32_t result, size_t input_rows_count) const override {
72
30
        return Impl::execute(block, arguments, result);
73
30
    }
_ZNK5doris11GeoFunctionINS_6StAreaILb0EEEE12execute_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_10StAsBinaryEE12execute_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_8StLengthEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
16
                        uint32_t result, size_t input_rows_count) const override {
72
16
        return Impl::execute(block, arguments, result);
73
16
    }
_ZNK5doris11GeoFunctionINS_14StGeometryTypeEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
3
                        uint32_t result, size_t input_rows_count) const override {
72
3
        return Impl::execute(block, arguments, result);
73
3
    }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb0EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
135
                        uint32_t result, size_t input_rows_count) const override {
72
135
        return Impl::execute(block, arguments, result);
73
135
    }
_ZNK5doris11GeoFunctionINS_18StDistanceFunctionILb1EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
112
                        uint32_t result, size_t input_rows_count) const override {
72
112
        return Impl::execute(block, arguments, result);
73
112
    }
_ZNK5doris11GeoFunctionINS_10StIsClosedEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
6
                        uint32_t result, size_t input_rows_count) const override {
72
6
        return Impl::execute(block, arguments, result);
73
6
    }
_ZNK5doris11GeoFunctionINS_15StNumGeometriesEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
5
                        uint32_t result, size_t input_rows_count) const override {
72
5
        return Impl::execute(block, arguments, result);
73
5
    }
_ZNK5doris11GeoFunctionINS_11StNumPointsEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
71
5
                        uint32_t result, size_t input_rows_count) const override {
72
5
        return Impl::execute(block, arguments, result);
73
5
    }
74
};
75
76
// Spatial WKB columns must remain visible to the implementation so it can validate the
77
// serialized value before any file data is consumed.  Do not use this wrapper for legacy
78
// geo functions or numeric constructors: their nullable arguments rely on the default
79
// null propagation supplied by IFunction.
80
template <typename Impl>
81
class SpatialWkbGeoFunction : public GeoFunction<Impl> {
82
public:
83
1.68k
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE6createEv
Line
Count
Source
83
3
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE6createEv
Line
Count
Source
83
15
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_12StCoordinateILb1EEEE6createEv
Line
Count
Source
83
7
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_12StCoordinateILb0EEEE6createEv
Line
Count
Source
83
7
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_7StAngleEE6createEv
Line
Count
Source
83
27
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_9StAzimuthEE6createEv
Line
Count
Source
83
40
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE6createEv
Line
Count
Source
83
179
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE6createEv
Line
Count
Source
83
257
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE6createEv
Line
Count
Source
83
214
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE6createEv
Line
Count
Source
83
253
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE6createEv
Line
Count
Source
83
133
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE6createEv
Line
Count
Source
83
112
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE6createEv
Line
Count
Source
83
107
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_6StAreaILb1EEEE6createEv
Line
Count
Source
83
34
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_6StAreaILb0EEEE6createEv
Line
Count
Source
83
24
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_8StLengthEE6createEv
Line
Count
Source
83
19
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_14StGeometryTypeEE6createEv
Line
Count
Source
83
5
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StDistanceFunctionILb0EEEE6createEv
Line
Count
Source
83
138
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
_ZN5doris21SpatialWkbGeoFunctionINS_18StDistanceFunctionILb1EEEE6createEv
Line
Count
Source
83
114
    static FunctionPtr create() { return std::make_shared<SpatialWkbGeoFunction<Impl>>(); }
84
3.33k
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
2
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
26
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_12StCoordinateILb1EEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
10
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_12StCoordinateILb0EEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
10
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_7StAngleEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
50
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_9StAzimuthEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
76
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
354
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
510
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
424
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
502
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
262
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
220
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
210
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_6StAreaILb1EEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
64
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_6StAreaILb0EEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
44
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_10StAsBinaryEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
34
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_8StLengthEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
34
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_14StGeometryTypeEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
6
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StDistanceFunctionILb0EEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
272
    bool use_default_implementation_for_nulls() const override { return false; }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StDistanceFunctionILb1EEEE36use_default_implementation_for_nullsEv
Line
Count
Source
84
224
    bool use_default_implementation_for_nulls() const override { return false; }
85
86
    Status execute_impl(FunctionContext* context, Block& block, const ColumnNumbers& arguments,
87
1.66k
                        uint32_t result, size_t input_rows_count) const override {
88
1.66k
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
1.65k
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
1.66k
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_8StAsTextINS_11StAsWktNameEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
1
                        uint32_t result, size_t input_rows_count) const override {
88
1
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
1
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
1
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_8StAsTextINS_12StAsTextNameEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
13
                        uint32_t result, size_t input_rows_count) const override {
88
13
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
7
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
13
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_12StCoordinateILb1EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
5
                        uint32_t result, size_t input_rows_count) const override {
88
5
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
5
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
5
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_12StCoordinateILb0EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
5
                        uint32_t result, size_t input_rows_count) const override {
88
5
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
5
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
5
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_7StAngleEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
25
                        uint32_t result, size_t input_rows_count) const override {
88
25
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
25
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
25
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_9StAzimuthEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
38
                        uint32_t result, size_t input_rows_count) const override {
88
38
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
38
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
38
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StContainsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
177
                        uint32_t result, size_t input_rows_count) const override {
88
177
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
177
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
177
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_16StIntersectsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
255
                        uint32_t result, size_t input_rows_count) const override {
88
255
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
255
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
255
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StDisjointFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
212
                        uint32_t result, size_t input_rows_count) const override {
88
212
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
212
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
212
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_13StTouchesFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
251
                        uint32_t result, size_t input_rows_count) const override {
88
251
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
251
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
251
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_12StWithinFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
131
                        uint32_t result, size_t input_rows_count) const override {
88
131
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
131
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
131
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_12StEqualsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
110
                        uint32_t result, size_t input_rows_count) const override {
88
110
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
110
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
110
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StRelationFunctionINS_14StOverlapsFuncEEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
105
                        uint32_t result, size_t input_rows_count) const override {
88
105
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
105
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
105
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_6StAreaILb1EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
32
                        uint32_t result, size_t input_rows_count) const override {
88
32
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
30
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
32
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_6StAreaILb0EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
22
                        uint32_t result, size_t input_rows_count) const override {
88
22
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
21
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
22
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_10StAsBinaryEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
17
                        uint32_t result, size_t input_rows_count) const override {
88
17
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
17
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
17
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_8StLengthEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
17
                        uint32_t result, size_t input_rows_count) const override {
88
17
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
16
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
17
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_14StGeometryTypeEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
3
                        uint32_t result, size_t input_rows_count) const override {
88
3
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
3
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
3
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StDistanceFunctionILb0EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
136
                        uint32_t result, size_t input_rows_count) const override {
88
136
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
135
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
136
    }
_ZNK5doris21SpatialWkbGeoFunctionINS_18StDistanceFunctionILb1EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
87
112
                        uint32_t result, size_t input_rows_count) const override {
88
112
        RETURN_IF_ERROR(validate_spatial_wkb_inputs(block, arguments));
89
112
        return GeoFunction<Impl>::execute_impl(context, block, arguments, result, input_rows_count);
90
112
    }
91
};
92
93
} // namespace doris