summaryrefslogtreecommitdiffstats
path: root/yql/essentials/udfs/examples/dummylog/dummylog_udf.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/examples/dummylog/dummylog_udf.cpp
parent4adf7eecae16a9b228b28cc5f64c27ef69ad5ec2 (diff)
YQL-20086 udfs
init commit_hash:f9684778bf1ea956965f2360b80b91edb7d4ffbe
Diffstat (limited to 'yql/essentials/udfs/examples/dummylog/dummylog_udf.cpp')
-rw-r--r--yql/essentials/udfs/examples/dummylog/dummylog_udf.cpp68
1 files changed, 24 insertions, 44 deletions
diff --git a/yql/essentials/udfs/examples/dummylog/dummylog_udf.cpp b/yql/essentials/udfs/examples/dummylog/dummylog_udf.cpp
index e3e227f1303..fd1dcb5970b 100644
--- a/yql/essentials/udfs/examples/dummylog/dummylog_udf.cpp
+++ b/yql/essentials/udfs/examples/dummylog/dummylog_udf.cpp
@@ -10,32 +10,28 @@ using namespace NUdf;
namespace {
-struct TRecordInfo
-{
+struct TRecordInfo {
ui32 Key;
ui32 Subkey;
ui32 Value;
static constexpr ui32 FieldsCount = 3U;
};
-
//////////////////////////////////////////////////////////////////////////////
// TDummyLog
//////////////////////////////////////////////////////////////////////////////
-class TDummyLog: public TBoxedValue
-{
+class TDummyLog: public TBoxedValue {
public:
explicit TDummyLog(
- const TRecordInfo& fieldIndexes)
+ const TRecordInfo& fieldIndexes)
: RecordInfo_(fieldIndexes)
{
}
private:
TUnboxedValue Run(
- const IValueBuilder* valueBuilder,
- const TUnboxedValuePod* args) const override
- {
+ const IValueBuilder* valueBuilder,
+ const TUnboxedValuePod* args) const override {
auto keyData = args[0].GetElement(RecordInfo_.Key);
auto subkeyData = args[0].GetElement(RecordInfo_.Subkey);
auto valueData = args[0].GetElement(RecordInfo_.Value);
@@ -55,21 +51,20 @@ private:
const TRecordInfo RecordInfo_;
};
-class TDummyLog2 : public TBoxedValue
-{
+class TDummyLog2: public TBoxedValue {
public:
- class TFactory : public TBoxedValue {
+ class TFactory: public TBoxedValue {
public:
TFactory(const TRecordInfo& inputInfo, const TRecordInfo& outputInfo)
: InputInfo_(inputInfo)
, OutputInfo_(outputInfo)
- {}
+ {
+ }
-private:
+ private:
TUnboxedValue Run(
const IValueBuilder* valueBuilder,
- const TUnboxedValuePod* args) const override
- {
+ const TUnboxedValuePod* args) const override {
Y_UNUSED(valueBuilder);
return TUnboxedValuePod(new TDummyLog2(args[0], InputInfo_, OutputInfo_));
}
@@ -81,8 +76,7 @@ private:
explicit TDummyLog2(
const TUnboxedValuePod& runConfig,
const TRecordInfo& inputInfo,
- const TRecordInfo& outputInfo
- )
+ const TRecordInfo& outputInfo)
: Prefix_(runConfig.AsStringRef())
, InputInfo_(inputInfo)
, OutputInfo_(outputInfo)
@@ -92,8 +86,7 @@ private:
private:
TUnboxedValue Run(
const IValueBuilder* valueBuilder,
- const TUnboxedValuePod* args) const override
- {
+ const TUnboxedValuePod* args) const override {
auto keyData = args[0].GetElement(InputInfo_.Key);
auto valueData = args[0].GetElement(InputInfo_.Value);
@@ -115,14 +108,14 @@ private:
//////////////////////////////////////////////////////////////////////////////
// TDummyLogModule
//////////////////////////////////////////////////////////////////////////////
-class TDummyLogModule: public IUdfModule
-{
+class TDummyLogModule: public IUdfModule {
public:
TStringRef Name() const {
return TStringRef::Of("DummyLog");
}
- void CleanupOnTerminate() const final {}
+ void CleanupOnTerminate() const final {
+ }
void GetAllFunctions(IFunctionsSink& sink) const final {
sink.Add(TStringRef::Of("ReadRecord"));
@@ -130,12 +123,11 @@ public:
}
void BuildFunctionTypeInfo(
- const TStringRef& name,
- TType* userType,
- const TStringRef& typeConfig,
- ui32 flags,
- IFunctionTypeInfoBuilder& builder) const final
- {
+ const TStringRef& name,
+ TType* userType,
+ const TStringRef& typeConfig,
+ ui32 flags,
+ IFunctionTypeInfoBuilder& builder) const final {
try {
Y_UNUSED(userType);
Y_UNUSED(typeConfig);
@@ -144,11 +136,7 @@ public:
if (TStringRef::Of("ReadRecord") == name) {
TRecordInfo recordInfo;
- auto recordType = builder.Struct(recordInfo.FieldsCount)->
- AddField<char*>("key", &recordInfo.Key)
- .AddField<char*>("subkey", &recordInfo.Subkey)
- .AddField<char*>("value", &recordInfo.Value)
- .Build();
+ auto recordType = builder.Struct(recordInfo.FieldsCount)->AddField<char*>("key", &recordInfo.Key).AddField<char*>("subkey", &recordInfo.Subkey).AddField<char*>("value", &recordInfo.Value).Build();
builder.Returns(recordType).Args()->Add(recordType).Done();
@@ -162,18 +150,10 @@ public:
builder.SetError(TStringRef::Of("Only AAA is valid type config"));
}
TRecordInfo inputInfo;
- auto inputType = builder.Struct(inputInfo.FieldsCount)->
- AddField<char*>("key", &inputInfo.Key)
- .AddField<char*>("subkey", &inputInfo.Subkey)
- .AddField<char*>("value", &inputInfo.Value)
- .Build();
+ auto inputType = builder.Struct(inputInfo.FieldsCount)->AddField<char*>("key", &inputInfo.Key).AddField<char*>("subkey", &inputInfo.Subkey).AddField<char*>("value", &inputInfo.Value).Build();
TRecordInfo outputInfo;
- auto outputType = builder.Struct(2U)->
- AddField<char*>("key", &outputInfo.Key)
- .AddField<char*>("value", &outputInfo.Value)
- .Build();
-
+ auto outputType = builder.Struct(2U)->AddField<char*>("key", &outputInfo.Key).AddField<char*>("value", &outputInfo.Value).Build();
builder.Returns(outputType).Args()->Add(inputType).Done();
builder.RunConfig<char*>();