summaryrefslogtreecommitdiffstats
path: root/yql/essentials/udfs/common/url_base/lib/url_parse.cpp
diff options
context:
space:
mode:
authorvvvv <[email protected]>2025-10-06 13:26:25 +0300
committervvvv <[email protected]>2025-10-06 14:06:25 +0300
commiteca8ce9cb1613d5c983185c4e43c20651a9638aa (patch)
tree61ee5ae779948e61af9a7691d19eaa2c09869121 /yql/essentials/udfs/common/url_base/lib/url_parse.cpp
parent4adf7eecae16a9b228b28cc5f64c27ef69ad5ec2 (diff)
YQL-20086 udfs
init commit_hash:f9684778bf1ea956965f2360b80b91edb7d4ffbe
Diffstat (limited to 'yql/essentials/udfs/common/url_base/lib/url_parse.cpp')
-rw-r--r--yql/essentials/udfs/common/url_base/lib/url_parse.cpp76
1 files changed, 38 insertions, 38 deletions
diff --git a/yql/essentials/udfs/common/url_base/lib/url_parse.cpp b/yql/essentials/udfs/common/url_base/lib/url_parse.cpp
index 34485970ee0..c892bf25f6f 100644
--- a/yql/essentials/udfs/common/url_base/lib/url_parse.cpp
+++ b/yql/essentials/udfs/common/url_base/lib/url_parse.cpp
@@ -1,53 +1,53 @@
#include "url_parse.h"
#define FIELD_ADD(name) structBuilder->AddField(#name, optionalStringType, &urlParseIndexes.name);
-#define FIELD_FILL(name) \
- if (value.FldIsSet(TUri::Field##name)) { \
+#define FIELD_FILL(name) \
+ if (value.FldIsSet(TUri::Field##name)) { \
fields[UrlParseIndexes_.name] = valueBuilder->NewString(value.GetField(TUri::Field##name)); \
}
namespace NUrlUdf {
- using namespace NUri;
- using namespace NKikimr;
- using namespace NUdf;
+using namespace NUri;
+using namespace NKikimr;
+using namespace NUdf;
- TUnboxedValue TParse::Run(
- const IValueBuilder* valueBuilder,
- const TUnboxedValuePod* args) const {
- TUri value;
- const auto ParseError = value.ParseAbs(args[0].AsStringRef(), ParseFlags_);
- TUnboxedValue* fields = nullptr;
- const auto result = valueBuilder->NewArray(FieldsCount, fields);
- if (ParseError == TUri::ParsedOK) {
- FIELD_MAP(FIELD_FILL)
- } else {
- fields[UrlParseIndexes_.ParseError] = valueBuilder->NewString(TStringBuilder() << ParseError);
- }
- return result;
+TUnboxedValue TParse::Run(
+ const IValueBuilder* valueBuilder,
+ const TUnboxedValuePod* args) const {
+ TUri value;
+ const auto ParseError = value.ParseAbs(args[0].AsStringRef(), ParseFlags_);
+ TUnboxedValue* fields = nullptr;
+ const auto result = valueBuilder->NewArray(FieldsCount, fields);
+ if (ParseError == TUri::ParsedOK) {
+ FIELD_MAP(FIELD_FILL)
+ } else {
+ fields[UrlParseIndexes_.ParseError] = valueBuilder->NewString(TStringBuilder() << ParseError);
}
+ return result;
+}
- bool TParse::DeclareSignature(
- const TStringRef& name,
- TType* userType,
- IFunctionTypeInfoBuilder& builder,
- bool typesOnly) {
- Y_UNUSED(userType);
- if (Name() == name) {
- TUrlParseIndexes urlParseIndexes;
+bool TParse::DeclareSignature(
+ const TStringRef& name,
+ TType* userType,
+ IFunctionTypeInfoBuilder& builder,
+ bool typesOnly) {
+ Y_UNUSED(userType);
+ if (Name() == name) {
+ TUrlParseIndexes urlParseIndexes;
- builder.Args(1)->Add<TAutoMap<char*>>();
- const auto optionalStringType = builder.Optional()->Item<char*>().Build();
- const auto structBuilder = builder.Struct(FieldsCount);
- structBuilder->AddField("ParseError", optionalStringType, &urlParseIndexes.ParseError);
- FIELD_MAP(FIELD_ADD)
- builder.Returns(structBuilder->Build());
+ builder.Args(1)->Add<TAutoMap<char*>>();
+ const auto optionalStringType = builder.Optional()->Item<char*>().Build();
+ const auto structBuilder = builder.Struct(FieldsCount);
+ structBuilder->AddField("ParseError", optionalStringType, &urlParseIndexes.ParseError);
+ FIELD_MAP(FIELD_ADD)
+ builder.Returns(structBuilder->Build());
- if (!typesOnly) {
- builder.Implementation(new TParse(urlParseIndexes));
- }
- return true;
- } else {
- return false;
+ if (!typesOnly) {
+ builder.Implementation(new TParse(urlParseIndexes));
}
+ return true;
+ } else {
+ return false;
}
}
+} // namespace NUrlUdf